html5中文学习网

您的位置: 首页 > html5教程 > 入门教程 » 正文

让ie浏览器成为支持html5的浏览器的解决方法(使用html5shiv)_html5教程技巧

[ ] 已经帮助:人解决问题
点评:越来越多的站点开始使用HTML5标签。但是目前的情况是还有很多人在使用IE6,IE7,IE8。这里提供一种让ie浏览器支持html5的方法,需要的朋友可以参考下

如今HTML5愈来愈引发大家的关注了,但目前支持HTML5的浏览器还不是主流,特别是国内用户近50%以上仍旧使用IE6,由于支持HTML5的IE9不支持Xp系统安装,这样未来很长一段时间,HTML5的开发者将必须考虑向下兼容的问题。HTML5的标签或CSS选择器兼容性的做法有很多,其中自己生成标签元素就是一种。4GuHTML5中文学习网 - HTML5先行者学习网

基本原理参见如下代码在IE8中效果,样式根本没有起作用。4GuHTML5中文学习网 - HTML5先行者学习网


复制代码
代码如下:
4GuHTML5中文学习网 - HTML5先行者学习网
<html>4GuHTML5中文学习网 - HTML5先行者学习网
<head>4GuHTML5中文学习网 - HTML5先行者学习网
<style>mxria{ color: red; }</style>4GuHTML5中文学习网 - HTML5先行者学习网
</head>4GuHTML5中文学习网 - HTML5先行者学习网
<body>4GuHTML5中文学习网 - HTML5先行者学习网
<mxria>Hello!</mxria>4GuHTML5中文学习网 - HTML5先行者学习网
</body>4GuHTML5中文学习网 - HTML5先行者学习网
</html>4GuHTML5中文学习网 - HTML5先行者学习网
4GuHTML5中文学习网 - HTML5先行者学习网
4GuHTML5中文学习网 - HTML5先行者学习网
4GuHTML5中文学习网 - HTML5先行者学习网

为了是浏览器识别<mxria></mxria>标签并显示对应样式的效果,我们可以如下增加一段js,看到效果就不同了4GuHTML5中文学习网 - HTML5先行者学习网

复制代码
代码如下:
4GuHTML5中文学习网 - HTML5先行者学习网
<html>4GuHTML5中文学习网 - HTML5先行者学习网
<head>4GuHTML5中文学习网 - HTML5先行者学习网
<style> mxria{ color: red; }</style>4GuHTML5中文学习网 - HTML5先行者学习网
<script>document.createElement("mxria")</script>4GuHTML5中文学习网 - HTML5先行者学习网
</head>4GuHTML5中文学习网 - HTML5先行者学习网
<body>4GuHTML5中文学习网 - HTML5先行者学习网
<mxria>Hello!mxria.com</mxria>4GuHTML5中文学习网 - HTML5先行者学习网
</body>4GuHTML5中文学习网 - HTML5先行者学习网
</html>4GuHTML5中文学习网 - HTML5先行者学习网
4GuHTML5中文学习网 - HTML5先行者学习网
4GuHTML5中文学习网 - HTML5先行者学习网
4GuHTML5中文学习网 - HTML5先行者学习网

现在大家明白了其中的奥妙吧!对,就是document.createElement  ,HTML5 shiv就是这样一个js插件,将所有HTML5的标签进行了重新生成,你需要加载该插件,那么HTML5程序就能被所有浏览器识别了。4GuHTML5中文学习网 - HTML5先行者学习网
下载地址:http://html5shim.googlecode.com/svn/trunk/html5.js4GuHTML5中文学习网 - HTML5先行者学习网

trunk/html5.js简单使用方法:4GuHTML5中文学习网 - HTML5先行者学习网

下面是引用Google的html5.js文件:4GuHTML5中文学习网 - HTML5先行者学习网

html5shiv的使用非常的简单,考虑到IE9是支持html5的,所以只需要在页面head中添加如下代码即可:4GuHTML5中文学习网 - HTML5先行者学习网

复制代码
代码如下:
4GuHTML5中文学习网 - HTML5先行者学习网
<!--[if lt IE 9]>4GuHTML5中文学习网 - HTML5先行者学习网
<script src="dist/html5shiv.js"></script>4GuHTML5中文学习网 - HTML5先行者学习网
<![endif]-->4GuHTML5中文学习网 - HTML5先行者学习网
4GuHTML5中文学习网 - HTML5先行者学习网

将上代码复制到head部分,记住一定要是head部分(因为IE必须在元素解析前知道这个元素,所以这个js文件不能在其他位置调用,否则失效)4GuHTML5中文学习网 - HTML5先行者学习网

当然,你也可以把代码拿出来自己看着办:4GuHTML5中文学习网 - HTML5先行者学习网

(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])}})()4GuHTML5中文学习网 - HTML5先行者学习网
最后在css里面加上这段:4GuHTML5中文学习网 - HTML5先行者学习网

/*html5*/ article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}4GuHTML5中文学习网 - HTML5先行者学习网
主要是让这些html5标签成块状,像div那样。4GuHTML5中文学习网 - HTML5先行者学习网

好了,简单吧,一句话概括就是:引用html5.js  使html5标签成块状4GuHTML5中文学习网 - HTML5先行者学习网

4GuHTML5中文学习网 - HTML5先行者学习网
(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助