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


Posted in HTML / CSS onApril 08, 2014

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

基本原理参见如下代码在IE8中效果,样式根本没有起作用。

复制代码
代码如下:

<html>
<head>
<style>mxria{ color: red; }</style>
</head>
<body>
<mxria>Hello!</mxria>
</body>
</html>

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

为了是浏览器识别<mxria></mxria>标签并显示对应样式的效果,我们可以如下增加一段js,看到效果就不同了

复制代码
代码如下:

<html>
<head>
<style> mxria{ color: red; }</style>
<script>document.createElement("mxria")</script>
</head>
<body>
<mxria>Hello!mxria.com</mxria>
</body>
</html>

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

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

trunk/html5.js简单使用方法:

下面是引用Google的html5.js文件:

html5shiv的使用非常的简单,考虑到IE9是支持html5的,所以只需要在页面head中添加如下代码即可:

复制代码
代码如下:

<!--[if lt IE 9]>
<script src="dist/html5shiv.js"></script>
<![endif]-->

将上代码复制到head部分,记住一定要是head部分(因为IE必须在元素解析前知道这个元素,所以这个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])}})()
最后在css里面加上这段:

/*html5*/ article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}
主要是让这些html5标签成块状,像div那样。

好了,简单吧,一句话概括就是:引用html5.js  使html5标签成块状

HTML / CSS 相关文章推荐
CSS3 透明色 RGBA使用介绍
Aug 06 HTML / CSS
css3圆角样式分享自定义按钮样式
Dec 27 HTML / CSS
使用CSS3来匹配横屏竖屏的简单方法
Aug 04 HTML / CSS
CSS3打造百度贴吧的3D翻牌效果示例
Jan 04 HTML / CSS
CSS3制作酷炫的条纹背景
Nov 09 HTML / CSS
HTML5的结构和语义(5):交互
Oct 17 HTML / CSS
html5文字阴影效果text-shadow使用示例
Jul 25 HTML / CSS
HTML5 创建canvas元素示例代码
Jun 04 HTML / CSS
Html5 语法与规则简要概述
Jul 29 HTML / CSS
基于HTML5的WebGL经典3D虚拟机房漫游动画
Nov 15 HTML / CSS
html5自定义video标签的海报与播放按钮功能
Dec 04 HTML / CSS
在html页面中取得session中的值的方法
Aug 11 HTML / CSS
为你的html5网页添加音效示例
Apr 03 #HTML / CSS
使用jquery实现HTML5响应式导航菜单教程
Apr 02 #HTML / CSS
简单html5代码获取地理位置
Mar 31 #HTML / CSS
HTML5注册页面示例代码
Mar 27 #HTML / CSS
html5实现微信打飞机游戏
Mar 27 #HTML / CSS
html5 canvas fillRect坐标和大小的问题解决方法
Mar 26 #HTML / CSS
html5适合移动应用开发的12大特性
Mar 19 #HTML / CSS
You might like
PHP生成随机数的方法总结
2018/03/01 PHP
PHP操作redis实现的分页列表,新增,删除功能封装类与用法示例
2018/08/04 PHP
PHP的微信支付接口使用方法讲解
2019/03/08 PHP
js实现点击按钮后给Div图层设置随机背景颜色的方法
2015/05/06 Javascript
javascript字符串与数组转换汇总
2015/05/26 Javascript
kindeditor编辑器点中图片滚动条往上顶的bug
2015/07/05 Javascript
Java Mybatis框架入门基础教程
2015/09/21 Javascript
在Node.js中使用Javascript Generators详解
2016/05/05 Javascript
JavaScript简单验证表单空值及邮箱格式的方法
2017/01/20 Javascript
JavaScript下拉菜单功能实例代码
2017/03/01 Javascript
JavaScript中Hoisting详解 (变量提升与函数声明提升)
2017/08/18 Javascript
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
Vue表单之v-model绑定下拉列表功能
2019/05/14 Javascript
nodejs对项目下所有空文件夹创建gitkeep的方法
2019/08/02 NodeJs
Vue+Element UI+vue-quill-editor富文本编辑器及插入图片自定义
2019/08/20 Javascript
JS实现商品橱窗特效
2020/01/09 Javascript
node.js基于dgram数据报模块创建UDP服务器和客户端操作示例
2020/02/12 Javascript
跟老齐学Python之私有函数和专有方法
2014/10/24 Python
Python利用turtle库绘制彩虹代码示例
2017/12/20 Python
flask框架中勾子函数的使用详解
2018/08/01 Python
python 实现数字字符串左侧补零的方法
2018/12/04 Python
Python爬虫实现爬取百度百科词条功能实例
2019/04/05 Python
python 实现Flask中返回图片流给前端展示
2020/01/09 Python
使用Python实现NBA球员数据查询小程序功能
2020/11/09 Python
澳大利亚最大的女装零售商:Millers
2017/09/10 全球购物
乌克兰数字设备、配件和智能技术的连锁商店:KTC
2020/08/18 全球购物
C++:memset ,memcpy和strcpy的根本区别
2013/04/27 面试题
热能动力工程毕业生自荐信
2013/11/07 职场文书
大学生实习思想汇报
2014/01/12 职场文书
公司任命书范本
2014/06/04 职场文书
2014年绿化工作总结
2014/12/09 职场文书
狂人日记读书笔记
2015/06/30 职场文书
2019年销售部季度工作计划3篇
2019/10/09 职场文书
MongoDB balancer的使用详解
2021/04/30 MongoDB
如何用RabbitMQ和Swoole实现一个异步任务系统
2021/05/29 PHP
IDEA 2022 Translation 未知错误 翻译文档失败
2022/04/24 Java/Android