好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

HTML5 语义元素

什么是语义元素?

一个 语义元素能够清楚的描述其意义给浏览器和开发者

无语义?元素: <div> 和 <span> - 无需考虑 内容

语义?元素: <form>,<table> 和 <img> - 清楚的定义了它的 内容

浏览器 支持

Internet Explorer 9+,Firefox,Chrome,Safari 和 Opera 支持 语义元素

注意:?Internet Explorer 8 及更早版本 不支持 该元素,不过我们在 文章 的的末尾提供了兼容的 解决方法

html5 中新的语义元素

在 html5 之前,许多的网站都包含了以下 HTML 代码

<div?id="nav">
<div>
<div?id="footer">

用来指明导航 链接 ,头部,以及尾部

HTML5 则提供了新的语义元素来明确 一个 Web 页面 的不同部分


<header>
<nav>
<section>
<article>
<aside>
< fig caption>
< fig ure>
<footer>

HTML5 <section> 元素

元素 <section> 用于定义文档中的节 ( section、区段),比如章节、页眉、页脚或文档中的其它部分

<section> 可以包含一组 内容 及其 标题

<section>
??<h1>日志</h1>
??<p>是我在乎,才会喜怒无常</p>
</section>

HTML5 <article> 元素

元素 <article> 用于定义独立的 内容

<article> 用法

Forum post

Blog post

News story

Comment

<article>
??<h1>全部 评论 </h1>
??<p>爱你,就是一万年</p>
</article>

HTML5 <nav> 元素

元素 <nav> 标签 定义导航 链接 的部分

<nav> 元素用于定义 页面 的导航 链接 部分区域,但是,不是所有的 链接 都需要包含在 <nav> 中

<nav>
????<a?href="/html">HTML?5</a>?|
????<a?href="/css">css?3</a>?|
????<a?href="/JavaScript">JavaScript</a>?|
????<a?href="/jquery">jQuery</a>
</nav>

HTML5 <aside> 元素

元素 <aside> 定义了 页面 主区域 内容 之外的 内容 ( 比如 侧边栏 )

<aside> 元素的 内容 应与主区域的 内容 相关

<h3>我的日志</h3>
<p>今天天气好冷,心情特沮丧</p>

<aside>
??<h4>每日正能量</h4>
??<p>明天就会天晴,还你以 一个 艳阳高照天</p>
</aside>

HTML5 <header> 元素

元素 <header> 描述了文档的头部区域

<header> 元素注意用于定义 内容 的介绍展示区域

我们可以在 一个 页面 中使用多个 <header> 元素

<article>
??<header>
????<h1>2017-10-1?日志</h1>
????<p><time?pubdate?datetime="2017-10-1"></time></p>
??</header>
??<p>放假第一天,心情特好,游玩了下黄山</p>
</article>

HTML5 <footer> 元素

元素 <footer> 元素描述了文档的 底部 区域

<footer> 元素应该包含它的包含元素

一个 页脚通常包含文档的作者,著作权信息, 链接 的使用条款,联系信息等

我们可以在 一个 页面 中使用多个 <footer> 元素

<footer>
??<p>作者:?F2er.com</p>
??<p><time?pubdate?datetime="2020-10-01"></time></p>
</footer>

HTML5 < fig ure> 和 < fig caption> 元素

< fig ure> 元素定义了独立的流 内容 (图像、图表、照片、 代码 等等)

< fig ure> 元素的 内容 应该与主 内容 相关,但如果被 删除 ,则不应对文档流产生影响

< fig caption> 标签 定义 < fig ure> 元素的 标题

< fig caption> 元素应该被置于 " fig ure" 元素的第 一个 或最后 一个 子元素的位置

< fig ure>
??<img?src="/static/i/img1.jpg"?alt="The?Pulpit?Rock"?width="304"?height="228">
??< fig caption> fig 1.?-?The?Pulpit?Pock, nor way</ fig caption>
</ fig ure>

我们可以开始使用这些语义元素吗?

我们上面介绍的元素都是块元素( 除了 < fig caption> )

为了让这些块及元素在所有版本的浏览器中生效,我们需要在样式表 文件 中设置一下 属性

header,section,footer,aside,nav,article, fig ure{ dis play:?block;}

Internet Explorer 8 及更早 IE 版本中的问题

IE8 及更早 IE 版本无法 在这 些元素中渲染 CSS 效果 ,以至于我们不能直接使用 <header>,<section>,<footer>,<aside>,<nav>,<article>,< fig ure>,或者其它的 HTML5 元素

解决 办法:?可以使用 HTML5 Shiv Javascrip t脚本来 解决 IE 的兼容问题

国外

<!--[if?lt?IE?9]>
<script?src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

国内

<!--[if?lt?IE?9]>
<script?src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
<![endif]-->

需要将这些 代码 放在 HTML 文档的头部,因为 IE 浏览器需要在头部加载后渲染这些 HTML5 的新元素。

HTML5 Web 存储 ? ?HTML5 表单属性

查看更多关于HTML5 语义元素的详细内容...

  阅读:49次

上一篇

下一篇

第1节:HTML5 教程    第2节:HTML5 浏览器支持    第3节:HTML5 新元素    第4节:HTML5 Video 视频    第5节:HTML 5 Video + DOM    第6节:HTML5 内联 SVG    第7节:HTML5 新的 Input 类型    第8节:HTML5 MathML 数学公式    第9节:HTML5 Geolocation 地理定位    第10节:HTML5 Canvas画布    第11节:HTML5 拖放 ( drag 和 drop )    第12节:HTML5 Audio 音频    第13节:HTML5 Web Workers    第14节:HTML5 表单元素    第15节:HTML5 表单属性    第16节:HTML5 语义元素    第17节:HTML5 Web 存储    第18节:HTML5 Web SQL 数据库    第19节:HTML5 应用程序缓存    第20节:HTML 5 服务器发送事件    第21节:HTML5 WebSocket    第22节:HTML5 历史记录API    第23节:HTML 5 代码规范    第24节:HTML5 Canvas 描边和填充    第25节:HTML5 Canvas 绘制矩形    第26节:HTML5 Canvas 清除画布    第27节:HTML5 Canvas 渐变    第28节:HTML5 Canvas 合成    第29节:HTML5 Canvas 绘制图像    第30节:HTML5 Canvas 绘制文本    第31节:HTML5 Canvas 阴影    第32节:HTML5 Canvas 路径    第33节:HTML5 Canvas 转换    第34节:HTML5 Canvas 状态    第35节:HTML5 Canvas toDataURL()    第36节:HTML5 Canvas 像素处理    第37节:HTML5 Canvas 制作动画