- 什么是语义元素?
语义元素清楚地向浏览器和开发者描述其意义。
非语义元素的例子:<div>
和 <span>
- 无法提供关于其内容的信息。
语义元素的例子:<form>
、<table>
以及 <img>
- 清晰地定义其内容。
许多网站包含了指示导航、页眉以及页脚的 HTML 代码,例如这些:
<div id="nav"> <div class="header"> <div id="footer">
。
- HTML5 提供了定义页面不同部分的新语义元素:
- HTML5
<section>
元素
<section>
元素定义文档中的节。
根据 W3C 的 HTML 文献:“节(section)是有主题的内容组,通常具有标题”。
可以将网站首页划分为简介、内容、联系信息等节。
实例
<section>
<h1>WWF</h1>
<p>The World Wide Fund for Nature (WWF) is....</p>
</section>
- HTML5
<article>
元素
<article>
元素规定独立的自包含内容。
文档有其自身的意义,并且可以独立于网站其他内容进行阅读。
<article>
元素的应用场景:
论坛、博客、新闻
实例
<article>
<h1>What Does WWF Do?</h1>
<p>WWF's mission is to stop the degradation of our planet's natural environment,
and build a future in which humans live in harmony with nature.</p>
</article>
- 嵌套语义元素
在 HTML5 标准中,<article>
元素定义完整的相关元素自包含块。
<section>
元素被定义为相关元素块。
我们能够使用该定义来决定如何嵌套元素吗?不,我们不能!
在因特网上,您会发现 <section>
元素包含 <article>
元素的 HTML 页面,还有 <article>
元素包含 <sections>
元素的页面。
您还会发现 <section>
元素包含 <section>
元素,同时 <article>
元素包含 <article>
元素。
- HTML5
<header>
元素
<header>
元素为文档或节规定页眉。
<header>
元素应该被用作介绍性内容的容器。
一个文档中可以有多个 <header>
元素。
下例为一篇文章定义了页眉:
<article>
<header>
<h1>What Does WWF Do?</h1>
<p>WWF's mission:</p>
</header>
<p>WWF's mission is to stop the degradation of our planet's natural environment,
and build a future in which humans live in harmony with nature.</p>
</article>
- HTML5
<footer>
元素
<footer>
元素为文档或节规定页脚。
<footer>
元素应该提供有关其包含元素的信息。
页脚通常包含文档的作者、版权信息、使用条款链接、联系信息等等。
您可以在一个文档中使用多个 <footer>
元素。
<footer>
<p>Posted by: Hege Refsnes</p>
<p>Contact information: <a href="mailto:someone@example.com">
someone@example.com</a>.</p>
</footer>
- HTML5
<nav>
元素
<nav>
元素定义导航链接集合。
<nav>
元素旨在定义大型的导航链接块。不过,并非文档中所有链接都应该位于 k 元素中!
实例
<nav>
<a href="/html/">HTML</a> |
<a href="/css/">CSS</a> |
<a href="/js/">JavaScript</a> |
<a href="/jquery/">jQuery</a>
</nav>
- HTML5
<aside>
元素
<aside>
元素页面主内容之外的某些内容(比如侧栏)。
aside 内容应该与周围内容相关。
实例
<p>My family and I visited The Epcot center this summer.</p>
<aside>
<h4>Epcot Center</h4>
<p>The Epcot Center is a theme park in Disney World, Florida.</p>
</aside>