让IE(ie6/ie7/ie8)支持HTML5元素,我们需要在HTML头部添加以下JavaScript,这是一个简单的document.createElement声明,利用条件注释针对IE来调用这个js文件。Opera,FireFox等其他非IE浏览器就会忽视这段代码,也不会存在http请求。
方式一:引用google的html5.js文件,代码内容可以自己下载下来看。
<!–[if lt IE9]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]–>
将以上代码放到head标签区间
方式二:自己coding JS搞定。
<script> (function() { if (! /*@cc_on!@*/(ie特有条件编译)
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(', '); var i= e.length; while (i--){ document.createElement(e[i]) } })() </script>不管你用上面哪中方式,请记得在CSS中进行如下定义,目的是让这些标签成为块状元素,just like div。
/*html5*/article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}
/*@cc_on@*/
用来判断浏览器很好用 var b = /*@cc_on!@*/false; 其中/*@cc_on ..... @*/之间的部分可以被ie识别并作为程序执行,同时启用ie的条件编译。 最常用的变量是@_jscript_version:js版本,最后一位是ie主版本号
示例:
var sSuffix = ( /*@cc_on!@*/false ) ? 'ie' : 'gecko' ;
/*@cc_on alert("显示浏览器版本号:"+@_jscript_version) @*/
alert(@_jscript_version)
alert("浏览器版本为"+sSuffix)