在HTML中<section>和<div>之间有什么区别?我们不是在这两种情况下都定义了节吗?


当前回答

使用<section>可能更整洁,有助于屏幕阅读器和SEO,而<div>的字节更小,打字更快

总的来说差别很小。

另外,不建议将<section>放在<section>中,而是将<div>放在<section>中

其他回答

<section>标记一个section, <div>标记一个没有关联语义的泛型块。

这只是一个观察,还没有发现任何文件可以证实这一点

如果一个section包含另一个section,内部section的h1-header将以比外部section的h1-header更小的字体显示。 当使用div而不是section内部div h1-header显示为h1。

<section>
  <h1>Level1</h1>
  some text
  <section>
    <h1>Level2</h1>
    some more text
  </section>
</section>

二级标题显示的字体比一级标题小。

当使用css为h1标题上色时,内部h1也被上色(行为与常规h1相同)。 在火狐18、IE 10和Chrome 28中也是如此。

许多网站包含如下HTML代码:<div id="nav"> <div class="header"> <div id="footer">来表示导航、页眉和页脚。所以<div>在html4中被用来定义网页的不同部分,但<div>并不意味着任何特别的东西,因此html5引入了许多语义元素,<section>是其中之一,它为屏幕阅读器、搜索引擎和浏览器等提供了足够的信息,以识别网站的不同部分。

主要的区别是如果你只使用<div>来定义网站部件。可读性较差。

如果使用语义元素而不是div标签。他们可以帮助提高你的网站的可读性,不仅对人类的其他程序(屏幕阅读器,搜索引擎等)也。我们仍然可以在语义元素中使用<div>作为容器。

使用<section>可能更整洁,有助于屏幕阅读器和SEO,而<div>的字节更小,打字更快

总的来说差别很小。

另外,不建议将<section>放在<section>中,而是将<div>放在<section>中

<div> -我们都知道并喜欢的通用流容器。它是一个块级元素,没有额外的语义含义(W3C:Markup, WhatWG)

<section> -通用文档或应用程序部分。A通常有一个标题(标题),也可能有一个页脚。它是一大块相关内容,比如一篇长文章的一个小节,页面的一个主要部分(比如主页上的新闻部分),或者web应用的标签界面中的一个页面。(W3C:标记,WhatWG)

我的建议: Div:使用较低版本(我认为4.01仍然)HTML元素(许多设计师处理)。 Section:最近出现的(html5) HTML元素。