ie8以下不兼容h5新標簽的解決方法


HTML5新添了一些語義化標簽,他們能讓代碼語義化更直觀易懂,有利於SEO優化。但是此HTML5新標簽在IE6/IE7/IE8上並不能識別,需要進行JavaScript處理。

解決思路就是用js創建html5中的新標簽,代碼如下:

<script> 
   (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(', ');
     var i= e.length;
     while (i--){
         document.createElement(e[i])
     } 
})() 
</script>

對於上面的代碼要初始化新標簽的CSS.因為HTML5在默認情況下表現為內聯元素,對這些元素進行布局我們需要利用CSS手工把它們轉為塊狀元素方便布局。

另外對於代碼中if (!  /*@cc_on!@*/ 0) return;是什么意思大多數人會有困惑,主要是用於判斷瀏覽器是否支持注釋條件編譯。在Internet Explorer 11標准模式和Windows應用商店應用中不支持條件編譯。 在Internet Explorer 10標准模式和所有早期版本中支持條件編譯。這樣非IE瀏覽器就會忽視這段代碼,也就不會有無謂的http請求了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM