刚开始看到标签的就有些疑惑,觉得为什么有那么多相同用途的标签,多方查询资料细细比较之后才发现原来各有千秋,结合自己的想法总结如下:
div在HTML早期版本就支持了,section和article是HTML5提出的两个语义化标签。
div
定义:文档中的分区或节。
使用场合:作为布局以及样式化时使用(此时三者并无区别,但div更常用)
提示:<div> 是一个块级元素,浏览器通常会在 div 元素前后放置一个换行符。
section
定义:文档中的节,一般是具有标题性的。
使用场合:文章的章节、标签对话框中的标签页、或者论文中有编号的部分。
提示:section不仅仅是一个普通的容器标签,这区别与div标签。一般来说,当元素内容明确地出现在文档大纲中时,section 就是适用的。
article:
定义:独立的自包含内容。一般来说,article会有标题部分( 包含在header内 ),有时也会包含footer。
使用场合:一段内容脱离了所在的语境,仍是完整的、独立的,则应该用article标签。
提示:虽然section也是带有主题性的一块内容,但是无论从结构上还是内容上来说,article本身就是独立的、完整的。
总结:
(1)div section article ,语义是从无到有,逐渐增强的。
(2)div 无任何语义,仅仅用作样式化或者脚本化;对于一段主题性的内容,则就适用 section;假如一段主题性内容脱离上下文后仍是完整且独立存在的一段内容,则就适用 article。