在完整的文章页面上,文章标题应该在<article>标签内吗?</article>

时间:2014-07-25 11:44:13

标签: html5 semantic-markup

如果我将文章标题(也是页面的主标题)放在<article>标记之外,则文档大纲的主要标题是文章标题。这似乎是可取的。

<h1>My wonderful article</h1> 
<article>   
     <p>Text of my article</p> 
</article>

但是<article>标记说明

  

article元素表示形成一个内容的一部分   文件或网站的独立部分;

我对此的解释是成为一个“独立的部分”,它需要文章标题。标题绝对是文章的附属部分。

但是,如果您将文章标题放在<article>标记中,则该页面在文档大纲中无标题。

这里的最佳做法是什么?

1 个答案:

答案 0 :(得分:0)

当文档仅包含本文时,请省略article元素:

<body>
  <h1>My wonderful article</h1>
  <p>…</p>
</body>

当文档还包含其他内容(如网站范围的导航,带有相关文章的侧边栏等)时,您不希望文章的标题成为文档的标题:< / p>

<!-- wrong! -->
<body> 
  <h1>My wonderful article</h1>
  <article></article>
  <nav></nav>
</body>

为什么呢?因为站点范围的导航不应该在仅与文章有关的标题的范围内。文档标题应描述文档的整个内容,而不仅仅是其主要部分。所以你需要这样一个额外的文档标题。

要么明确提供文件标题(通常为¹,使用网站名称)......

<body> 
  <h1>My wonderful site</h1>
  <article><h1>My wonderful article</h1></article>
  <nav></nav>
</body>

...或省略它(......如果你必须;这要求你在适当的地方使用切片元素),基本上在大纲中创建一个未标记的条目:

<body> 
  <article><h1>My wonderful article</h1></article>
  <nav></nav>
</body>

(¹我的一些相关答案包含更多详情:123。)