2017-04-18 86 views
1

以下html错误地解释了。<Head>出现在<body>

使用chrome调试工具,<head>出现在<body>里面。

这是为什么发生? 代码:

<!DOCTYPE html> 
<html> 
<hed> 
    <meta charset="utf-8"/> 
    <link href="_css/style.css" rel="stylesheet" /> 
    <title>Position test</title> 
</hed> 
<body> 
    <div class="block"> 
     <p>this p inside a div</p> 
    </div> 
    <table> 
    <tr> 
     <td><p>this p inside td</p></td> 
     <td></td> 
     </tr> 
    </table> 
     <div class="table"> 
     <p>this p inside a div displayed as a table</p> 
    </div> 
</body> 
</html> 

结果: https://zoharch.github.io/position/index.html

+4

你拼写'hed'而不是'head',是这个错字还是它真的是你的代码? – Swellar

回答

2

因为你必须在头标签的错误

<hed>应该<head> </hed>应该</head>

HTML

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"/> 
    <link href="_css/style.css" rel="stylesheet" /> 
    <title>Position test</title> 
</head> 
<body> 
    <div class="block"> 
     <p>this p inside a div</p> 
    </div> 
    <table> 
    <tr> 
     <td><p>this p inside td</p></td> 
     <td></td> 
     </tr> 
    </table> 
     <div class="table"> 
     <p>this p inside a div displayed as a table</p> 
    </div> 
</body> 
</html> 
3

您的拼写不正确。你写了hed。

这将是:

<head></head> 
0

它应该是这样的只是复制粘贴此头,马上就好:)

<head> 
    <meta charset="utf-8"> 
    <link href="_css/style.css" rel="stylesheet"> 
    <title>Position test</title> 
</head> 
1

它发生,因为<hed>标记(<head>拼写错误)不被识别,因此浏览器将其视为开始未知类型的hed元素。由于head元素中不允许使用此元素,因此浏览器意味着body元素的开始,其中包含文档中的所有其余元素。在此之前,它意味着一个空的head元素。

在大多数情况下,这并不重要,因为将HTML文档分割为headbody元素是语法和“哲学”的。 meta,linktitle元素在实际中正常工作,即使浏览器将它们视为在body之内。但当然你应该纠正<head></head>标签的拼写错误。