让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中单位px,em,rem,vh,vw,vmin,vmax的区别及浏览器支持情况
Dec 06 HTML / CSS
html5+css3之制作header实例与更新
Dec 21 HTML / CSS
html5 桌面提醒:Notifycations应用介绍
Nov 27 HTML / CSS
使用html5+css3来实现slider切换效果告别javascript+css
Jan 08 HTML / CSS
html5 offlline 缓存使用示例
Jun 24 HTML / CSS
HTML5 input placeholder 颜色修改示例
May 30 HTML / CSS
HTML实现代码雨源码及效果示例
Feb 25 HTML / CSS
关于解决iframe标签嵌套问题的解决方法
Mar 04 HTML / CSS
详解HTML5常用的语义化标签
Sep 27 HTML / CSS
元素水平垂直居中的方式
Mar 31 HTML / CSS
详解CSS不受控制的position fixed
May 25 HTML / CSS
教你做个可爱的css滑动导航条
Jun 15 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
一键删除顽固的空文件夹 软件下载
2007/01/26 PHP
PHP移动文件指针ftell()、fseek()、rewind()函数总结
2014/11/18 PHP
CodeIgniter集成smarty的方法详解
2016/05/26 PHP
Yii框架参数配置文件params用法实例分析
2019/09/11 PHP
JavaScript之HTMLCollection接口代码
2011/04/27 Javascript
利用jquery的获取JS文件中的字符串内容
2012/02/14 Javascript
js前台判断开始时间是否小于结束时间
2012/02/23 Javascript
教你如何使用PHP输出中文JSON字符串
2014/05/22 Javascript
jQuery实现信息提示框(带有圆角框与动画)效果
2015/08/07 Javascript
快速学习jQuery插件 Form表单插件使用方法
2015/12/01 Javascript
纯js实现悬浮按钮组件
2016/12/17 Javascript
Angular之toDoList的实现代码示例
2017/12/02 Javascript
JavaScript运行原理分析
2018/02/09 Javascript
nodejs实现的简单web服务器功能示例
2018/03/15 NodeJs
Bootstrap 实现表格样式、表单布局的实例代码
2018/12/09 Javascript
JS实现checkbox互斥(单选)功能示例
2019/05/04 Javascript
微信小程序开发中var that =this的用法详解
2020/01/18 Javascript
JavaScript实现手机号码 3-4-4格式并控制新增和删除时光标的位置
2020/06/02 Javascript
js 将多个对象合并成一个对象 assign方法的实现
2020/09/24 Javascript
jQuery实现查看图片功能
2020/12/01 jQuery
基于python的Tkinter实现一个简易计算器
2015/12/31 Python
浅谈python迭代器
2017/11/08 Python
使用pyinstaller打包PyQt4程序遇到的问题及解决方法
2019/06/24 Python
Python文件操作基础流程解析
2020/03/19 Python
Python 字节流,字符串,十六进制相互转换实例(binascii,bytes)
2020/05/11 Python
如何使用 Python 读取文件和照片的创建日期
2020/09/05 Python
使用Html5实现异步上传文件,支持跨域,带有上传进度条
2016/09/17 HTML / CSS
Kipling意大利官网:世界著名的时尚休闲包袋品牌
2019/06/05 全球购物
大学生工作推荐信范文
2013/12/02 职场文书
行政总监岗位职责
2013/12/05 职场文书
农村面貌改造提升实施方案
2014/03/18 职场文书
学习考察心得体会
2014/09/04 职场文书
学校运动会广播稿100条
2014/09/14 职场文书
荆州古城导游词
2015/02/06 职场文书
如何写观后感
2015/06/19 职场文书
Java实现注册登录跳转
2022/06/16 Java/Android