在此上下文中,元素p不允许作为元素h2的子元素

时间:2014-01-20 07:18:21

标签: html html5

我的HTML代码是

<h2><p><strong>My text</strong></p></h2>

这会引发错误Element p not allowed as child of element h2 in this context. (Suppressing further errors from this subtree.)

我尝试了多次,但所有似乎都在抛出错误。这样做的正确方法是什么?

3 个答案:

答案 0 :(得分:7)

您不能将段落放在标题内。

From the HTML standard,在标题元素(h1,h2,h3,h4,h5和h6)中只允许使用“短语内容”。 definition of "phrasing content"是:

  

短语内容是文档的文本,以及在段落内标记该文本的元素。短语内容的运行形成段落。

     

a abbr area(如果它是地图元素的后代)audio b bdi bdo { {1}} br button canvas cite code data datalist del dfn { {1}} em embed i iframe img input ins kbd keygen(如果存在label属性,则link itemprop map mark(如果存在math属性)meta {{ 1}} itemprop meter noscript object output progress q ruby s {{ 1}} samp script select small span strong sub sup svg {{ 1}} template textarea文字

     

大多数被归类为短语内容的元素只能包含自身被归类为短语内容的元素,而不是任何流内容。

你不应该把标题放在标题中,因为标题应该用来描述它后面的段落(比如报纸或杂志)。如果需要增加间距,请使用CSS中的time属性。

答案 1 :(得分:0)

只需删除<p></p>标记即可。 p元素在h2内无效,在那里没有任何意义。

考虑同时删除<strong></strong>,无论它们是什么意思。 h2这样的标题本质上是文档的重要部分,默认情况下也以粗体显示。因此适当的标记是

<h2>My text</h2>

答案 2 :(得分:0)

如果您对其他元素(嵌套元素)中允许的元素有疑问,请查看每个元素here的页面放置部分