HTML5 结构元素介绍
刚开始学习 HTML 时,总是对 HTML5 新增的语义化标签的使用情景有所迷糊,在小实战中纠结于到底应该什么时候使用这些标签元素才是合理的。虽然使用这些标签使得页面对搜索引擎来说更加具有可读性,但是错误地使用这些标签,反而会误导搜索引擎,从而影响了页面的SEO。于是,清楚地认识这些标签的使用范围并合理地使用它们是非常有必要的,尽管它们并不会为我们带来什么样式上的变化。
header
header 元素通常用来包含放在页面的头部的内容,除此之外也可以用来作为一个内容区块(如 artice)的顶部内容。
nav
nav 即 navigator 导航栏,用来定义导航链接。将页面具有导航性质的链接元素(如站内导航、页内导航、翻页导航等)归纳于 nav 元素区域内。
article
article 元素往往定义的是一篇比较独立的文章、日志、评论之类的内容,其内部常常包含 header 元素、section 元素与 h1~h6 元素。所谓独立便是页面其他内容与该 article 元素内容无直接关联,在此处更换内容性质类似的 article 并不会影响整个页面的布局。
section
section 元素经常被新手与 div 元素混用。section 元素用于对页面中的某些内容进行“分块”,但 section 元素的内部应该需要有标题,没有标题的内容区块应该使用其他的标签。
仅仅是为了选择设置样式的页面容器,应该使用 div 标签。(所以 div 标签在使用频率上要比 section 多很多)
同时,如果内容更适合用其他语义化标签(article、aside、nav),优先使用其他标签。
aside
aside 元素用于定义页面的侧边栏,往往内容是一些介绍、内容相关的其他信息甚至广告等。宽度一般小于正文栏。
footer
footer 元素定义定义一个页面或者区域的底部内容,在这方面它和 header 元素非常的相似。一般底部内容都是相关信息或者一些信息标识。
示例
最后做一个简单的“无样式”示例,使用以上H5结构元素构建一个页面:
<body>
<header>
<h1>个人网站</h1>
<span>一个兴趣使然的个人网站</span>
</header>
<nav>
<ul>
<li><a href="#">首页</a></li>
<li><a href="#">博客</a></li>
<li><a href="#">关于</a></li>
</ul>
</nav>
<div style="display: flex;">
<div style="flex: 1;">
<article>
<header>
<h1>一篇文章</h1>
<span>作者:ceynri</span>
</header>
<h2>章节一</h2>
<p>文段一</p>
<footer>
<p>本文允许转载,禁止用于商业用途</p>
</footer>
</article>
<article>
<h1>评论</h1>
<section>
<header>
<h1>Well</h1>
<span>评论者:Tom</span>
</header>
<p>Explosion is art!</p>
</section>
<section>
<header>
<h1>OMG!</h1>
<span>评论者:Mary</span>
</header>
<p>I'm coming</p>
</section>
</article>
</div>
<aside>
<h1>广告</h1>
<img src="ad.png" alt="ad">
</aside>
</div>
<footer>
<a href="#">关于本站</a>
<a href="#">友情链接</a>
</footer>
</body>
效果如下:
← HTML 常用标签 Emmet 入门教程 →