在我的html中使用h1-h6标签时,我不断在w3c验证器上收到错误消息。我是新手,我已经尝试了很多次来解决这个问题,但我做不到。
我的网站上的文字看起来很完美,但不会验证。我该如何解决这个问题?错误消息如下;
第34行,第4列:文档类型 这里不允许元素“h1”;失踪 “对象”,“小程序”,“地图”之一, “iframe”,“button”,“ins”,“del” 起始标签
<h1><span> My website </h1>< span>
&lt; ----这是我收到错误的代码。
不允许提及的元素 出现在其中的上下文中 你放了它;另一个提到 元素是唯一的元素 两者都允许,并且可以包含 元素提到。这可能意味着 你需要一个包含元素,或者 可能你已经忘记了 关闭上一个元素。
此消息的一个可能原因是您尝试将块级元素(例如“
”或“”)放入内联元素(例如“”,“”,或“”)。
在任何情况下,使用标头标签的最佳方法是什么?我做错了什么?
答案 0 :(得分:22)
因此,从DTD的角度来看:
<h1><span>…</span></h1> <!-- This is fine -->
<div><h1>…</h1></div> <!-- This is fine -->
<h1><span>…</h1></span> <!-- This is wrong -->
<span><h1>…</h1></span> <!-- This is wrong -->
问题的正确解决方案实际上取决于您尝试使用跨度的内容。
(请注意,上面对块和内联元素的讨论有些简化。有关完整故事,请参阅How to read the HTML DTD,特别是有关内容模型的部分)
答案 1 :(得分:9)
您正在以错误的顺序关闭代码:
<H1><span> My website </h1></span>
应该是
<h1><span>My website</span></h1>
答案 2 :(得分:3)
<h1 style="display:inline;">Bold text goes here</h1> <h2 style="display:inline;">normal text goes here</h2>
如果您查看内联H1标签
,请使用上述内容答案 3 :(得分:1)
你不能用另一个元素吐出一个元素
< H1>< span> My website < /h1>< /span>
应该是这个
< H1>< span> My website < /span>< /h1>
答案 4 :(得分:1)
<h1><span> My website </span></h1>
您应按照打开它们的顺序关闭标记。
答案 5 :(得分:0)
您的元素未正确嵌套。
将它们视为不同类型的括号。
如果<h1></h1>
与{}
相似且<span></span>
与[]
相似,那么您有
{ [ My website } ]
如您所见,括号已关闭。
你想要
<h1><span>My website</span></h1>