首页 » 前端说 » 正文

HTML5中section和article的区别

HTML5带出了一系列新元素,被广泛应用。然而,有一些元素在使用时易被混淆,包括以下两个新元素:<section>和<article>。 
最常被问起的问题是:在什么情况下我们应该使用这些元素?以及我们应该如何正确的使用这些元素? 

一、section元素

从字面理解就是区块、部分的意思,相对于article元素更加广泛,每个区块都可以使用,比如页面里的导航菜单、文章正文、文章的评论等。

1、section元素用于对网站或应用程序中页面上的内容进行分块,section元素的作用是对页面上的内容进行分块,或者说对文章进行分段,;

2、一个section元素通常由内容及其标题组成。通常不推荐为那些没有标题的内容使用section元素,

3、section元素并非一个普通的容器元素;当一个内容需要被直接定义样式或通过脚本定义行为时,推荐使用div而非section元素;

4、如果article、nav、aside元素都符合某条件,那么就不要用section元素定义;

5、section元素中的内容可以单独存储到数据库中或输出到word文档中。

二、article元素

article元素代表文档、页面或应用程序中独立的、完整的、可以独自被外部引用的内容。它可以是一篇博客或报刊中的文章、一篇论坛帖子、一段用户评论或独立的插件,或其他任何独立的内容。除了内容部分,一个article元素通常有它自己的标题(一般放在一个header元素里面),有时还有自己的脚注。

注:article元素是可以嵌套使用的,内层的内容在原则上需要与外层的内容相关联。例如,一篇博客文章中,针对该文章的评论就可以使用嵌套article元素的方式;用来呈现评论的article元素被包含在表示整体内容的article元素里面。

嵌套的代码如下: 

<article>
  <header>
		<h1>article元素使用方法</h1>
		<p>发表日期:<time pubdate="pubdate">2017/2/9</time></p>
  </header>

  <p>此标签里显示的是article整个文章的主要内容,,下面的section元素里是对该文章的评论</p>

  <section>
		<h2>评论</h2>
		<article>
			<header>
				<h3>发表者:Galin</h3>
				<p>1小时前</p>
			</header>  
		<p>这篇文章很不错啊,顶一下!</p>
		</article> 

    <article>
			<header>            
				<h3>发表者:木木</h3>
				<p>1小时前</p>
			</header>
			<p>这篇文章很不错啊,对article解释的很详细</p>  
		</article>
	</section>
</article>