首页 文章

HTML验证错误

提问于
浏览
0

我正在尝试使用w3c-validator验证我的代码
编码:utf-8
Doctype:XHTML 1.0 Frameset

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
  <head>  
    <title>Openfire Archived IM content Search</title>  
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />  
  </head>  
  <body>  
    <p>  
        <!--The following javascript function re-directis the user to the same page-->
        <script type="text/javascript">  
        function startover(){  
            window.location="http://localhost/openfireIMsearch/index.php"  
        }  
        </script>

<!--html form for start-over button. The javascript function startover() is called when the user clicks this button-->
        <form method="get" action= "index.php" name = "re-login">
            <input type = "button" value ="Start Over" onclick = "startover()" />
            <input type = "hidden" name = "re-login-hidden" value ="re-login-on" />
        </form>  
    </p>
  </body>
</html>

我收到以下错误,我不知道:

第7行,第6列:文档类型不允许元素“body”在这里✉上面提到的元素是在不允许的上下文中找到的 . 这可能意味着您有错误的嵌套元素 - 例如“body”部分中的“style”元素而不是“head”内部 - 或者两个重叠的元素(不允许) . 导致此错误的一个常见原因是在HTML文档中使用XHTML语法 . 由于HTML的隐式闭合元素规则,此错误可以创建级联效果 . 例如,在HTML文档的“head”部分中使用XHTML的“自闭”标签“meta”和“link”可能会导致解析器推断出“head”部分的结尾和“body”的开头“section(不允许使用”link“和”meta“;因此报告错误) .

错误消息似乎表明一个原因可能是我使用meta标签 . 但doctype清楚地表明该文档是XHTML而不是HTML . 我在这里不知所措 . 有人可以解释一下吗?谢谢!

1 回答

  • 3

    你的doctype似乎在告诉我它是一个框架集 . 这会使身体标签变得非法,而您希望改为使用框架集 . 有一段时间以来我已经完成了任何帧,所以我可能会错误地记住它 .

    如果不明显,解决方案就是找到正确的doctype . 就像是:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    

    http://www.w3.org/QA/2002/04/valid-dtd-list.html似乎有一个可供选择的列表(也是我复制上述内容的地方) .

相关问题