嵌套<article>和<h1>标签?</h1> </article>

时间:2011-01-21 21:33:44

标签: html css html5 tags nested

问题:

其中哪一种是嵌套<h1><article>标记的正确方法,您的理由是什么?

选择A:

<article>
    <h1>Some Title</h1>
    <p>Here's some text and whatnot.</p>
    <p>Here's another paragraph filled with other text and other whatnots.</p>
</article>

选择B:

<div class="post">
    <h1>Here's a Really Awesome Title</h1>
    <article>
        <p>Here's a paragraph with text and whatnot.</p>
        <p>And here's another paragraph. I think this one is pretty awesome too.</p>
    </article>
</div>

关于这一点的看法似乎好坏参半,我不是100%这是正确答案。

6 个答案:

答案 0 :(得分:14)

两者都很好

@David Dorward有一个很好的答案,我会发表评论以扩展它,但当我意识到我的评论太长时,我决定我只是添加我自己的答案。

h#元素在语义上属于他们的父母。

h1

的主标题
<body>
  <h1>Some text</h1>
</body>

虽然此h1文章

的主要标题
<body>
  <article>
    <h1>Some text</h1>
  </article>
</body>

这使我们能够以有意义的方式扩展h#元素的用法,如下所示:

<body>
  <h1>Blag Tottle</h1>
  <article>
    <h1>Article 1 Title</h1>
    <p>Lorem ipsum etc</p>
  </article>
  <article>
    <h1>Article 2 Title</h1>
    <p>Lorem ipsum etc</p>
  </article>
</body>

现在您可能希望将文章标题分开一些,这是header元素的完美应用:

<body>
  <h1>Blag Tottle</h1>
  <article>
    <header>
      <h1>Article 1 Title</h1>
      <span class="author">And not a mouse</span>
    </header>
    <p>Lorem ipsum etc</p>
  </article>
  <article>
    <header>
      <h1>Article 2 Title</h1>
      <span class="author">Somebody</span>
    </header>
    <p>Lorem ipsum etc</p>
  </article>
</body>

答案 1 :(得分:7)

标题的范围是文章元素(和其他sectioning elements)。标题应该在它适用的文章内。

  

切片内容元素中标题内容的第一个元素表示该部分的标题

- http://www.w3.org/TR/html5/sections.html#headings-and-sections

选择A如果是那个文章的标题会更好。

如果选择B是其后所有文章的标题,则更好。

答案 2 :(得分:1)

我正在使用第一个选项。因为,文章的意思是 a part of external content 。所以这个内容应该有一个标题。

答案 3 :(得分:0)

选择A.章节标题(H1也是如此)是你文章的一部分。

答案 4 :(得分:0)

我会说标题是文章的一部分。

据我所知,这真的取决于个人品味。只要您编写有效的HTML5,就不会得到正确或错误的答案。

答案 5 :(得分:-1)

关于文章(元标题)的标题应该在<article>之外,作为文章一部分的标题(例如章节)应该在{{1 }}

所有这些只是恕我直言。