- 第1节:HTML5 浏览器支持
- 第2节:HTML5 新元素
- 第3节:HTML5 Canvas
- 第4节:HTML5 SVG
- 第5节:HTML5 MathML
- 第6节:HTML5 拖放
- 第7节:HTML5 地理定位
- 第8节:HTML5 视频(Video)
- 第9节:HTML5 音频(Audio)
- 第10节:HTML5 Input 类型
- 第11节:HTML5 表单元素
- 第12节:HTML5 表单属性
- 第13节:HTML5 语义元素
- 第14节:HTML5 Web 存储
- 第15节:HTML5 Web SQL
- 第16节:HTML5 应用程序缓存
- 第17节:HTML5 Web Workers
- 第18节:HTML5 SSE
- 第19节:HTML5 WebSocket
- 第20节:HTML5 代码规范
- 第21节:HTML5 <!DOCTYPE> 标签
- 第22节:HTML5 <a> 标签
- 第23节:HTML5 <area> 标签
- 第24节:HTML5 <abbr> 标签
- 第25节:HTML5 <applet> 标签
- 第26节:HTML5 <article>标签
- 第27节:HTML5 <aside> 标签
- 第28节:HTML5 <address> 标签
- 第29节:HTML <audio> 标签
- 第30节:HTML5 <b> 标签
- 第31节:HTML5 <base> 标签
- 第32节:HTML5 <blockquote> 标签
- 第33节:HTML5 <br />标签
- 第34节:HTML5 <button> 标签
- 第35节:HTML5 <bdi> 标签
- 第36节:HTML5 <bdo> 标签
- 第37节:HTML5 <body> 标签
- 第38节:HTML5 <canvas> 标签
- 第39节:HTML5 <col> 标签
- 第40节:HTML5 <colgroup> 标签
- 第41节:HTML5 <caption> 标签
- 第42节:HTML5 <em> <strong> <dfn> <code> <samp> <kbd> <var> <cite> 标签
- 第43节:HTML5 <ul> 标签
- 第44节:HTML5 <dl> 标签
- 第45节:HTML5 <del> 标签
- 第46节:HTML5 <dd> 标签
- 第47节:HTML5 <details> 标签
- 第48节:HTML5 <div> 标签
- 第49节:HTML5 <embed> 标签
- 第50节:HTML5 <figcaption> 标签
- 第51节:HTML5 <form> 标签
- 第52节:HTML5 <figure> 标签
- 第53节:HTML5 <footer> 标签
- 第54节:HTML5 <fieldset> 标签
- 第55节:HTML5 <hgroup> 标签
- 第56节:HTML5 <hr> 标签
- 第57节:HTML5 <h1> 至 <h6> 标签
- 第58节:HTML5 <header> 标签
- 第59节:HTML5 <html> 标签
- 第60节:HTML5 <head> 标签
- 第61节:HTML5 <i> 标签
- 第62节:HTML5 <iframe> 标签
- 第63节:HTML5 <input> 标签
- 第64节:HTML5 <img> 标签
- 第65节:HTML5 <ins> 标签
- 第66节:HTML5 <link> 标签
- 第67节:HTML5 <li> 标签
- 第68节:HTML5 <legend> 标签
- 第69节:HTML5 <label> 标签
- 第70节:HTML5 <map> 标签
- 第71节:HTML5 <meta> 标签
- 第72节:HTML5 <menu> 标签
- 第73节:HTML5 <meter> 标签
- 第74节:HTML5 <mark> 标签
- 第75节:HTML5 <nav> 标签
- 第76节:HTML5 <noscript> 标签
- 第77节:HTML5 <ol> 标签
- 第78节:HTML5 <object> 标签
- 第79节:HTML5 <option> 标签
- 第80节:HTML5 <output> 标签
- 第81节:HTML5 <optgroup> 标签
- 第82节:HTML5 <p> 标签
- 第83节:HTML5 <pre> 标签
- 第84节:HTML5 <param> 标签
- 第85节:HTML5 <progress> 标签
- 第86节:HTML5 <q> 标签
- 第87节:HTML5 <rp> 标签
- 第88节:HTML5 <rt> 标签
- 第89节:HTML5 <ruby> 标签
- 第90节:HTML5 <s> 标签
- 第91节:HTML5 <sub> 和 <sup> 标签
- 第92节:HTML5 <span> 标签
- 第93节:HTML5 <small> 标签
- 第94节:HTML5 <style> 标签
- 第95节:HTML5 <strike> 标签
- 第96节:HTML5 <select> 标签
- 第97节:HTML5 <source> 标签
- 第98节:HTML5 <section> 标签
- 第99节:HTML5 <summary> 标签
- 第100节:HTML5 <td> 标签
- 第101节:HTML5 <th> 标签
- 第102节:HTML5 <tt> 标签
- 第103节:HTML5 <tr> 标签
- 第104节:HTML5 <table> 标签
- 第105节:HTML5 <title> 标签
- 第106节:HTML5 <tfoot> 标签
- 第107节:HTML5 <thead> 标签
- 第108节:HTML5 <time> 标签
- 第109节:HTML5 <tbody> 标签
- 第110节:HTML5 <textarea> 标签
HTML5 浏览器支持
HTML5 浏览器支持
目前市面上的浏览器有很多版本,你可以让一些较早的浏览器(不支持HTML5)支持 HTML5。
HTML5 浏览器支持
现代的浏览器都支持 HTML5。
此外,所有浏览器,包括旧的和最新的,对无法识别的元素会作为内联元素自动处理。
正因为如此,你可以 "教会" 浏览器处理 "未知" 的 HTML 元素。
将 HTML5 元素定义为块元素
HTML5 定了 8 个新的 HTML 语义(semantic) 元素。所有这些元素都是块级 元素。
为了能让旧版本的浏览器正确显示这些元素,你可以设置 CSS 的 display 属性值为 block:
实例
display: block;
}
为 HTML 添加新元素
你可以为 HTML 添加新的元素。
该实例向 HTML 添加的新的元素,并为该元素定义样式,元素名为 <myHero> :
实例
<html>
<head>
<meta charset="utf-8">
<title>为 HTML 添加新元素</title>
<script>document.createElement("myHero")</script>
<style>
myHero {
display: block;
background-color: #ddd;
padding: 50px;
font-size: 30px;
}
</style>
</head>
<body>
<h1>我的第一个标题</h1>
<p>我的第一个段落。</p>
<myHero>我的第一个新元素</myHero>
</body>
</html>
JavaScript 语句 document.createElement("myHero") 是为了为 IE 浏览器添加新的元素。
Internet Explorer 浏览器问题
你可以使用以上的方法来为 IE 浏览器添加 HTML5 元素,但是:
我们可以使用 Sjoerd Visscher 创建的 "HTML5 Enabling JavaScript", " shiv" 来解决该问题:
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js" rel="external nofollow" ></script>
<![endif]-->
以上代码是一个注释,作用是在 IE 浏览器的版本小于 IE9 时将读取 html5.js 文件,并解析它。
注意:国内用户请使用百度静态资源库(Google 资源库在国内不稳定):
<script src="http://apps.bdimg.com/libs/html5shiv/3.7/html5shiv.min.js" rel="external nofollow" rel="external nofollow" ></script>
<![endif]-->
针对IE浏览器html5shiv 是比较好的解决方案。html5shiv主要解决HTML5提出的新的元素不被IE6-8识别,这些新元素不能作为父节点包裹子元素,并且不能应用CSS样式。
完美的 Shiv 解决方案
实例
<html>
<head>
<meta charset="utf-8">
<title>Styling HTML5</title>
<!--[if lt IE 9]>
<script src="http://apps.bdimg.com/libs/html5shiv/3.7/html5shiv.min.js" rel="external nofollow" rel="external nofollow" ></script>
<![endif]-->
</head>
<body>
<h1>我的第一篇文章</h1>
<article>
学技术,从test开始!
</article>
</body>
</html>
html5shiv.js 引用代码必须放在 <head> 元素中,因为 IE 浏览器在解析 HTML5 新元素时需要先加载该文件。