让IE支撑HTML5的办法
越来越多的站点开端使用 HTML5 标签,但是当前的状况是还有许多人在使用IE6、IE7、IE8。为了让所有阅读者都可以正常的拜访,解决方案有下面两个
越来越多的站点开端使用 HTML5 标签,但是当前的状况是还有许多人在使用IE6、IE7、IE8。为了让所有阅读者都可以正常的拜访,解决方案有下面两个:
1.为网站创立多套模板,通历程序对User-Agent的推断为不一样的阅读器会员显示不一样的页面,例如:优酷网。
2.使用Javascript来使不支撑HTML5的阅读器支撑HTML标签。
针对IE比力好的解决方案是html5shiv。htnl5shiv主要解决HTML5提出的新的元素不被IE6-8识别,这些新元素不克不及作为父节点包裹子元素,并且不克不及利用CSS样式。让CSS 样式利用在未知元素上只需施行 document.createElement(elementName) 即可实现。html5shiv就是按照这个道理创立的。
html5shiv的使用非常的简便,思考到IE9是支撑html5的,所以只需要在页面head中增加如下代码即可:
复制代码
代码如下:
<!-–[if lt IE 9]--><script src=" http://html5shiv.googlecode.com/svn/trunk/html5.js "></script ><!--[endif]–- >
下面是一些补充:
当然包罗本人BLOG在内。关于HTML5不得不提IE,在iphone、Google、Opera和Mozilla等主流阅读器厂商积极参与新版本HTML标准的拟定和推行时,微软却对HTML 5标准不屑一顾。然而微软近期才表态要在IE中支撑HTML 5,乃至到今天为止的IE8及以下是没法支撑HTML5标签的。但在sitepoint寻到了让IE支撑HTML5方法。
以下是在的IE 8显示的例子,未作处置前:
让IE(包罗IE6)支撑HTML5元素,我们需要在HTML头部增加以下JavaScript,这是一个简便的document.createElement声明,利用前提注释针对IE在对象中创立对应的节点。
复制代码
代码如下:
<!--[if IE]> <script> document.createElement("header"); document.createElement("footer"); document.createElement("nav"); document.createElement("article"); document.createElement("section"); </script> <![endif]-->
增加以上代码后,在IE8中显示的结果如下:
sitepoint例子中创立节点的JavaScript代码好像过于臃肿,在smashingmagazine供给的代码好像更简约。
演示如下
提醒:您可以先修改部分代码再运转
复制代码
代码如下:
<!--[if IE]> <script> (function(){if(!/*@cc_on!@*/0)return;var e = "header,footer,nav,article,section".split(','),i=e.length;while(i--){document.createElement(e[i])}})() </script> <![endif]-->
HTML5在默许状况下展现为内联元素,对这些元素停止规划我们需要利用CSS手工把它们转为块状元素,如下例:
复制代码
代码如下:
header, footer, nav, section, article { display:block; }
以上就是让IE支撑HTML5的办法的具体内容,更多请关注百分百源码网其它相关文章!