嵌套在HTML5中

时间:2011-06-11 02:46:20

标签: html5

我的理解(如果我错了,请纠正我)是html5中的“section”标签有点像包装div。如果这是正确的,好的,好的,没有概率。但是嵌套怎么样?众所周知,将div放在彼此内部是很常见的。这在html5中是指我们接下来的“部分”吗?

2 个答案:

答案 0 :(得分:6)

如果内容表明,则可以并且应该嵌套节。例如,请参阅http://www.mattryall.net/blog/2008/10/html-5-headings-and-sectionshttp://blog.whatwg.org/is-not-just-a-semantic

来自W3C(强调我的):

  

DIV和SPAN元素与id和class属性一起提供了向文档添加结构的通用机制。这些元素将内容定义为内联(SPAN)或块级(DIV),但不对内容强加其他表述习语

Divs对内容没有任何语义含义。部分做。如果内容需要,可以并且应该嵌套它们的部分,就像格式化经典章节段结构时一样。 部分应该用作纯粹技术问题的钩子。分区仍然是可行的方式。

答案 1 :(得分:0)

你不应该像你描述的那样嵌套html5元素......就像这样:

  <section>
    <section>
      <section>
        <h1>...</h1>
        <p>...</p>
      </section>
    </section>
  </section>

最常见的错误之一是使用section元素嵌套或包装article元素,如下所示:

<section>
  <article>
    ...
  </article>
</section>
<section>
  <article>
    ...
  </article>
</section>

您可以将带有文章的部分分成逻辑部分,反之亦然,但前面的代码很可能用于样式化而不是语义。在这种情况下,您应该用div元素替换其中一个。

在html5中嵌套元素的正确方法几乎就是你可能已经熟悉的方法......一个例子:

<main>
  <div>
    <div>
      <section>
        <header>
          <h1></h1>
          <time datetime=""></time>
        </header>
        <img src="" alt="">
        <p></p>
        <p></p>
        <p></p>
      </section>
    </div>
  </div>
</main>