对于一个还没过英语四级的娃来说,看几篇外语博文真不容易啊!如果解读有错,大家见笑了。
刚刚“研究”过几篇关于html5 shiv的文章,算是得出一些心得吧。从Paul IrishThe Story of the HTML5 ShivJohn ResigHTML5 Shiv,再到Remy SharpHTML5 enabling script,说的是从document.creatElement(tagName)到Html5 Shiv的艰苦历程,也是我的艰苦历程。
creatElement()应用于creat element,creat 出来的 element 的属性类似于span,而且js部分必须放在该元素的前面,不能放在后面,因为浏览器必须在元素解析前知道这个元素,详见”createElement_x()可以创造html标签“。
经过了多年的研究,Paul Irish等人终于出成果,可以让IE支持html5。我也看到过很多文章涉及到html5 shiv能让IE系列兼容html5。或者是笔者愚钝,未能真正了解shiv。在我的少量实验里,发现有些标签是不兼容的,譬如<audio>和<video>。因为时间问题,我看的文章不算多,实验也不够多,因此未能确实地回答。待我更深入了解这方面知识时,再发表我的见解。
尽管我遇到以上的疑问,但是这种方法确实至少可以让部分标签兼容。
先插入jQuery文件,然后再插入以下代码,表示仅在IE浏览器下执行

<!–[if IE]>
<script src=”http://html5shiv.googlecode.com/svn/trunk/html5.js”></script>
<![endif]–>

 

谨记此文不能放于文件底部。如果不想影响载入速度,则用以下代码代替(笔者认为差不了多少)

(function(){if(!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_x(e[i])}})()

最后再css里面加这一段,使标签成块状
article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}

© 2012 Hedgehog Suffusion theme by Sayontan Sinha