html5 中的 article 和 section 元素

HTML5带出了一系列新元素,并且将在未来被广泛应用。然而,有一些元素在使用时易被混淆,包括以下两个新元素:<article><section>

最常被问起的问题是:在什么情况下我们应该使用这些元素?以及我们应该如何正确的使用这些元素?

Article元素

从名字上,它已经很好的诠释了自己,但是我们仍要看看官方文档上是如何描述它的:

“在文档,页面,应用或是站点上的一个独立部分,并且大体上,是可独立分配,或是重复使用的,例如在发布时。这个可以是论坛帖子,杂志或是新闻,博客条目,用户提交的评论,互动的小工具或小工具,或任何其他独立项目的内容。”

从上描述中,我们可以总结出<article>元素专用于结构化文章,特别是我们要发布的,例如博客,页面内容或是论坛帖子。

以下例子给出了如何使用<article>构建一个博客文章。精心开发5年的UI前端框架!

.代码  

  1. <article class="post">
  2. <header>
  3. <h1>This is Blog Post Title</h1>
  4. <div class="post-meta">
  5. <ul>
  6. <li class="author">Author Name</li>
  7. <li class="categories">Save in Categories</li>
  8. </ul>
  9. </div>
  10. </header>
  11. <div class="post-content">
  12. Sweet roll halvah biscuit toffee liquorice tart pudding sesame snaps.
  13. Biscuit powder jelly-o fruitcake faworki chocolate bar. Pudding oat
  14. cake tootsie roll sesame snaps lollipop gingerbread bonbon. Gummies
  15. halvah gummies danish biscuit applicake gingerbread jelly-o pastry.
  16. </div>
  17. </article>

此外,<article>元素还可与section元素结合,需要的时候,可以使用<section>元素将文章分为几个段落,如下例所示。 精心开发5年的UI前端框架!

.代码  

  1. <article class="post">
  2. <header>
  3. <h1>This is Blog Post Title</h1>
  4. <div class="post-meta">
  5. <ul>
  6. <li class="author">Author Name</li>
  7. <li class="categories">Save in Categories</li>
  8. </ul>
  9. </div>
  10. </header>
  11. <div class="post-content">
  12. <section>
  13. <h2>This is the Sub-Heading</h2>
  14. Sweet roll halvah biscuit toffee liquorice tart pudding sesame snaps.
  15. Biscuit powder jelly-o fruitcake faworki chocolate bar. Pudding oat cake
  16. tootsie roll sesame snaps lollipop gingerbread bonbon. Gummies halvah
  17. gummies danish biscuit applicake gingerbread jelly-o pastry.
  18. </section>
  19. <section>
  20. <h3>This is another Sub-Heading</h3>
  21. Topping cheesecake sweet pie carrot cake sweet roll. Gummi bears lemon drops
  22. toffee sesame snaps tart topping chupa chups apple pie gummies. Wafer chocolate
  23. cake. Sugar plum chocolate bar topping ice cream carrot cake danish bonbon.
  24. Cheesecake gummi bears dragée jujubes dragée dragée brownie jelly biscuit. Powder croissant jelly beans pastry.
  25. </section>
  26. </div>
  27. </article>

Section元素

这 是一个最容易产生歧义的元素。它与<div>元素有什么区别?我们一直在用<div>来划分段落,所以除 了<div>,我们什么时候使用这个元素。我们引用官方文档来阐述它。根据WHATWG文档,对<section>元素做了以下 描述:

“<section>元素表示了一篇文档或应用中,通用段落 – WHATWG”精心开发5年的UI前端框架!

从描述中我们可以看出<section>元素的作用就是分段,或多或少类似于<div>。但是它仍有一个特例。在文档中,加入了一段特别声明:

“当一个元素仅用于风格样式或是为了脚本的方便,我们鼓励作者使用<div>。<section>元素适用于,当元素的内容需要明确的列出时。- WHATWG”

基于这一点,我们可以总结以下两点:

  1. 尽管section元素在技术上是可以设计样式的,但是当有复杂的样式或脚本时,我们仍建议使用div元素。
  2. 类似于<li>元素,section元素是用来列举内容的。

因此在现实例子中,使用<section>元素的原因是结构化的列出博客的内容,代码如下:

.代码  

  1. <div class="blog">
  2. <section class="post">
  3. <h2 class="post-title">Blog Post Title</h2>
  4. <p class="post-excerpt">Ice cream tart powder jelly-o.
  5. Gummies chocolate cake ice cream cookie halvah tiramisu jelly-o.</p>
  6. </section>
  7. <section class="post">
  8. <h2 class="post-title">Blog Post Title</h2>
  9. <p class="post-excerpt">Ice cream tart powder jelly-o.
  10. Gummies chocolate cake ice cream cookie halvah tiramisu jelly-o.</p>
  11. </section>
  12. <section class="post">
  13. <h2 class="post-title">Blog Post Title</h2>
  14. <p class="post-excerpt">Ice cream tart powder jelly-o.
  15. Gummies chocolate cake ice cream cookie halvah tiramisu jelly-o.</p>
  16. </section>
  17. </div>

这只是个例子,<section>元素也可以用作其他用途。

总结

如万维网的创始人和W3C的董事所预测的那般,所有HTML5创造出来的新元素都是为了是网络结构更加语义化。如何正确的应用这些元素在网络开发者和设计者之间,仍存有争论。精心开发5年的UI前端框架!

无论如何,不要混淆观点。如我之前提出的,只要是合理的情况,且你看到使用了它使得结构变得意义非凡,那么请用它。

时间: 2024-10-11 21:57:33

html5 中的 article 和 section 元素的相关文章

HTML5中的Article和Section元素

HTML5带出了一系列新元素,并且将在未来被广泛应用.然而,有一些元素在使用时易被混淆,包括以下两个新元素:和. 最常被问起的问题是:在什么情况下我们应该使用这些元素?以及我们应该如何正确的使用这些元素? Section元素 这是一个最容易产生歧义的元素.它与元素有什么区别?我们一直在用来划分段落,所以除 了,我们什么时候使用这个元素.我们引用官方文档来阐述它.根据WHATWG文档,对元素做了以下 描述: "元素表示了一篇文档或应用中,通用段落 - WHATWG" 精心开发5年的UI前

html5:article与section元素

article元素 aiticle元素代表文档.页面或应用程序中独立的.完整的.可以肚子被外部引用的内容.它可以使一片博客或报刊中的文章.帖子. 一个article元素通常有它自己的标题,通常放在header元素里面,有时还有他的脚注.   Section元素 section元素用于对网站或应用程序中页面上的内容进行分块.一个section元素通常有内容及其标题组成.但section元素并非一个普通的容器元素:当一个容器需要被直接定义样式或通过脚本定义行为时,推荐使用div而非section元素

HTML5之article元素与section元素之间的区别?

在HTML5中,为了使文档的结构更加清晰明确,追加了几个与页眉.页脚.内容区块等文档结构相关联的结构元素.内容区块是指将HTML页面按逻辑分割后 的单位.例如对于书籍来说,章.节可以称为内容区块:对于博客网站来说,导航菜单.文章正文.文章的评论等每一个部分都可称为内容区块.       在HTML5中新增的主体结构元素中有两个元素分别article元素与section元素,这两个元素是什么意思?通常用于哪些内容区块?何时用article元素?何时用section元素?两者之间的区别是什么?   

HTML5的article和section的区别

内容区块是指将HTML页面按逻辑分割后的单位.对于页面网站来说,导航菜单.文章正文.文章的评论等每一个部分都可称为内容区块.      article元素      article元素代表文档.页面或应用程序中独立的.完整的.可以独自被外部引用的内容.它可以是一篇博客或报刊中的文章.一篇论坛帖子.一段用户评论或独立的插件,或其他任何独立的内容.除了内容部分,一个article元素通常有它自己的标题(一般放在一个header元素里面),有时还有自己的脚注.<article>      <h

HTML5中的新增元素

HTML5中新增了大量的元素与属性,这些新增的元素和属性使HTML5的功能变得更强大,使网页设计效果有了更多的实现可能. 新增的主体结构元素section元素<section>标签定义文档中的节,比如章节,页眉,页脚或文档中的其他部分.它可以与h1,h2,h3,h4,h5,h6等元素结合起来使用,显示文档结构.<section> <h1>...</h1> <p>...</p></section> article元素<

浅谈HTML5之二:新增的元素和废除的元素

新增结构元素: section元素 section元素定义文档或应用程序中的一个区段,比如章节.页眉.页脚或文档中的其他部分.它可以与h1,h2,h3,h4,h5,h6元素结合起来使用,标示文档结构. HTML5中代码示例:<section>…</section> HTML4中代码示例:<div>…</div> article元素 article元素表示文档中的一块独立的内容,譬如博客中的一篇文章或报纸中的一篇文章. HTML5中代码示例:<artic

html5中的网页结构

一.html5中的大纲 在html5中,使用各种结构元素所描述出来的整个网页的层次结构,就是该网页的大纲.因此在组织这份大纲的时候,不能使用div元素,因为div元素只能当做容器,用在需要对网页中某个局部使用整体样式时.http://gsnedders.html5.org/outliner/网站中有一个文档大纲分析器,可以将文档大纲以可视化的形式展示出来."Untitled Section"表示缺乏标题 二.大纲的编排规则 关于内容区块的编排,可以分为显示编排与隐式编排两种方式. 1.

HTML5 中 div 和section以及 article 的不同之处

HTML5 中 div section article 的区别 刚刚开始接触 HTML5 时,对它的标签很不适应,甚至一度有点反感.尤其是对 div.section.article 这几个标签,实在弄不清楚应该使用在什么场合下.div标签这个标签是我们见得最多.用得最多的一个标签.本身没有任何语义,用作布局以及样式化. section标签与 div 的无语义相对,简单地说 section 就是带有语义的 div 了,但是千万不要觉得真得这么简单.section 表示一段专题性的内容,一般会带有标

[html5]HTML5中&lt;section&gt;和&lt;article&gt;的区别

一.section元素 从字面理解就是区块.部分的意思,相对于article元素更加广泛,每个区块都可以使用,比如页面里的导航菜单.文章正文.文章的评论等. 1.section元素用于对网站或应用程序中页面上的内容进行分块,section元素的作用是对页面上的内容进行分块,或者说对文章进行分段,: 2.一个section元素通常由内容及其标题组成.通常不推荐为那些没有标题的内容使用section元素, 3.section元素并非一个普通的容器元素:当一个内容需要被直接定义样式或通过脚本定义行为时