IE(IE6/IE7/IE8)支持HTML5标签

让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)

 

posted @ 2013-07-18 17:03  mguo  阅读(431)  评论(0编辑  收藏  举报