自从HTML5能为我们的新网页带来更高效洁净的代码而得到更多的关注,然而唯一能让IE识别那些新元素(如 article)的途径是使用HTML5 shiv,感谢remy sharp为我们提供了这个迷你脚本来解决IE支持HTML5的问题。 使用和下载 html5.js必须在页面head元素内调用(因为IE
自从HTML5能为我们的新网页带来更高效洁净的代码而得到更多的关注,然而唯一能让IE识别那些新元素(如<article>)的途径是使用HTML5 shiv,感谢remy sharp为我们提供了这个迷你脚本来解决IE支持HTML5的问题。
使用和下载
html5.js必须在页面head元素内调用(因为IE必须在元素解析前知道这个元素,所以这个js文件不能在页面底部调用。)
作者已经把js文件放在Google code project上并允许大家直接调用,当然,前提是你不在意调用额外的文件。
http://html5shiv.googlecode.com/svn/trunk/html5.js
你可以使用IE条件注释来调用这个js文件,这样像FireFox等非IE浏览器就会忽视这段代码,也就不会有无谓的http请求了。下面这段代码仅会在IE浏览器下运行:
<!--[if IE]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
当然如果你不喜欢调用外网文件,你也可以下载下来上传到自己的服务器单独调用(作者允许)。
以下是js文件中的代码:
(function{if(!/*@cc_on!@*/0)return;var e = "abbr,article,aside,audio,canvas,datalist,details,dialog,eventsource,figure,footer,header,
hgroup,mark,menu,meter,nav,output,progress,section,time,video".split(','),i=e.length;while(i--){document.createElement(e[i])}})
PS:所有新增标记,在不支持它们的浏览器上,需要为其重新定义相关表现形式,例如他们都是块状态(display:block;)。
html5
真的可以?
IE必须在元素解析前知道这个元素
这个 挺有用的!
必须在元素解析前知道这个元素
不错!很实用的!
这个应该很实用!不知道能不能通用所有浏览器!
简化,高效,赞。
脚本来解决IE支持HTML5的问题