在以前的HTML页面中,你们基本上都是用了Div+CSS的布局方式。而搜索引擎去抓取页面的内容的时候,它只能猜想你的某个Div内的内容是文章内容容器,或者是导航模块的容器,或者是做者介绍的容器等等。也就是说整个HTML文档结构定义不清晰,HTML5中为了解决这个问题,专门添加了:页眉、页脚、导航、文章内容等跟结构相关的结构元素标签。css
在讲这些新标签以前,咱们先看一个普通的页面的布局方式:
上图中咱们很是清晰的看到了,一个普通的页面,会有头部,导航,文章内容,还有附着的右边栏,还有底部等模块,而咱们是经过class进行区分,并经过不一样的css样式来处理的。但相对来讲class不是通用的标准的规范,搜索引擎只能去猜想某部分的功能,另外就是此页面程序交给视力障碍人士来阅读的话,文档结构和内容也不会很清晰。而HTML5新标签带来的新的布局则是下面这种状况:
相关的HTML代码是:
<body>
<header>...</header>
<nav>...</nav>
<article>
<section>...</section>
</article>
<aside>...</aside>
<footer>...</footer>
</body>html
有了上面的直接的感官的认识后,咱们下面一一来介绍HTML5中的相关结构标签。ide
section标签
<section>标签,定义文档中的节。好比章节、页眉、页脚或文档中的其它部分。通常用于成节的内容,会在文档流中开始一个新的节。它用来表现普通的文档内容或应用区块,一般由内容及其标题组成。但section元素标签并不是一个普通的容器元素,它表示一段专题性的内容,通常会带有标题。
当咱们描述一件具体的事物的时候,一般鼓励使用article来代替section;当咱们使用section时,仍然可使用h1来做为标题,而不用担忧它所处的位置,以及其它地方是否用到;当一个容器须要被直接定义样式或经过脚本定义行为时,推荐使用div元素而非section。
<section>
<h1>section是什么?</h1>
<h2>一个新的章节</h2>
<article>
<h2>关于section</h1>
<p>section的介绍</p>
...
</article>
</section>布局
article标签
<article>是一个特殊的section标签,它比section具备更明确的语义,它表明一个独立的、完整的相关内容块,可独立于页面其它内容使用。例如一篇完整的论坛帖子,一篇博客文章,一个用户评论等等。通常来讲,article会有标题部分(一般包含在header内),有时也会包含footer。article能够嵌套,内层的article对外层的article标签有隶属关系。例如,一篇博客的文章,能够用article显示,而后一些评论能够以article的形式嵌入其中。
<article>
<header>
<hgroup>
<h1>这是一篇介绍HTML 5结构标签的文章</h1>
<h2>HTML 5的革新</h2>
</hgroup>
<time datetime="2011-03-20">2011.03.20</time>
</header>
<p>文章内容详情</p>
</article>网站
nav标签
nav标签表明页面的一个部分,是一个能够做为页面导航的连接组,其中的导航元素连接到其它页面或者当前页面的其它部分,使html代码在语义化方面更加精确,同时对于屏幕阅读器等设备的支持也更好。
<nav>
<ul>
<li>厚德IT</li>
<li>FlyDragon</li>
<li>J飞龙天惊</li>
</ul>
</nav>搜索引擎
aside标签
aside标签用来装载非正文的内容,被视为页面里面一个单独的部分。它包含的内容与页面的主要内容是分开的,能够被删除,而不会影响到网页的内容、章节或是页面所要传达的信息。例如广告,成组的连接,侧边栏等等。
<aside>
<h1>做者简介</h1>
<p>厚德IT</p>
</aside>spa
header标签
<header>标签订义文档的页眉,一般是一些引导和导航信息。它不局限于写在网页头部,也能够写在网页内容里面。一般<header>标签至少包含(但不局限于)一个标题标记(<h1>-<h6>),还能够包括<hgroup>标签,还能够包括表格内容、标识、搜索表单、<nav>导航等。
<header>
<hgroup>
<h1>网站标题</h1>
<h1>网站副标题</h1>
</hgroup>
</header>orm
footer标签
footer标签订义section或document的页脚,包含了与页面、文章或是部份内容有关的信息,好比说文章的做者或者日期。做为页面的页脚时,通常包含了版权、相关文件和连接。它和<header>标签使用基本同样,能够在一个页面中屡次使用,若是在一个区段的后面加入footer,那么它就至关于该区段的页脚了。
<footer>
COPYRIGHT@厚德IT
</footer>htm
hgroup标签
hgroup标签是对网页或区段section的标题元素(h1-h6)进行组合。例如,在一区段中你有连续的h系列的标签元素,则能够用hgroup将他们括起来
<hgroup>
<h1>这是一篇介绍HTML 5结构标签的文章</h1>
<h2>HTML 5的革新</h2>
</hgroup>索引
figure 标签
用于对元素进行组合。多用于图片与图片描述组合。
<figure>
<img src="img.gif" alt="figure标签" title="figure标签" />
<figcaption>这儿是图片的描述信息</figcaption>
</figure>
总结: 有了新的结构性的标签的标准,让HTML文档更加清晰,可阅读性更强,更利于SEO,也更利于视障人士阅读。