【问题标题】:How to use <section> and <article> tags in HTML5?如何在 HTML5 中使用 <section> 和 <article> 标签?
【发布时间】:2014-11-12 09:27:33
【问题描述】:

我只是对如何在 HTML5 中使用 &lt;article&gt;&lt;section&gt; 标记感到困惑。

我在 Google 和 Stack Overflow 网站上引用了很多内容。

在这方面,我发现了 HTML5 页面,其中 &lt;section&gt; 元素包含 &lt;article&gt; 元素,&lt;article&gt; 元素包含 &lt;sections&gt; 元素。

我还发现了包含 &lt;section&gt; 元素的 &lt;section&gt; 元素和包含 &lt;article&gt; 元素的 &lt;article&gt; 元素的页面。

这些标签的具体用途是什么?

【问题讨论】:

  • 在此处提及您的参考资料...提供网址
  • (重复)阅读此... Link 1Link 2
  • 我知道,什么是
    和什么是
    .. 但我问的是包含哪个是。?
  • @deepika 没有规则(据我所知)规定一个必须被另一个包含。它们的使用旨在根据内容的独特品质为您的内容赋予语义价值。

标签: html semantic-markup


【解决方案1】:

这取决于你的内容。

例如,最近的博客帖子列表可以是包含多个 articlesection(示例 1),复杂的博客帖子可以是带有多个 sectionarticle(示例 2),博客带有 cmets 的帖子可以是一个 article 和一个 section 和几个 article(示例 3)。

如何决定何时使用哪个?简单:

  1. 如果您需要分段内容元素,请以 section 开头。
  2. 检查内容是否与definition of nav 匹配。如果是,请使用nav,否则:
  3. 检查内容是否与definition of aside 匹配。如果是,请使用aside,否则:
  4. 检查内容是否与definition of article 匹配。如果是,请使用article,否则:
  5. 留在section

示例 1:博客文章列表

<section>
  <h2>Recent blog posts</h2>

  <article>
    <h3>Blog post 1</h3>
  </article>

  <article>
    <h3>Blog post 2</h3>
  </article>

</section>

示例 2:一篇复杂的博文

<article>
  <h2>Blog post 1</h2>

  <section>
    <h3>So, this is what happened</h3>
  </section>

  <section>
    <h3>What the others said</h3>
  </section>

</article>

示例 3:使用 cmets 的博客文章

<article>
  <h2>Blog post 2</h2>

  <section>
    <h3>Comments</h3>

    <article>
      <p>First!</p>
    </article> 

    <article>
      <p>First! <ins>Edit: Second :(</ins></p>
    </article>        

  </section>

</article>

【讨论】:

  • 不同意,主要是因为您忽略了文章是针对联合内容的。所以不知道你从哪里得到这些信息的其余部分
  • @albert:我的回答也不排除联合内容,HTML5 规范也不将article 的使用限制为联合内容。 -- 你到底有什么不同意的?
  • 这是一个关键点……奇怪的是它被遗漏了developer.mozilla.org/en-US/docs/Web/HTML/Element/article
  • @albert:对不起,我不明白你的意思。我给出了三个示例,展示了articlesection 如何以不同的方式嵌套(即what the OP wants to know),并链接到article 元素的规范,该规范准确地解释了如何使用它。我看不出联合内容在这种情况下如何以及为什么重要。这是article许多 个可能的用例之一,但对于理解嵌套不是必需的。
  • 您的回答之上的小问题:我注意到您经常使用

    你用了什么?并且页面中只能有一个

    吗?谢谢。

猜你喜欢
  • 2012-02-02
  • 1970-01-01
  • 2011-11-03
  • 1970-01-01
  • 2013-11-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多