2012-09-22 38 views
2

我經常看到有人建議我包括HTML5 shiv JS script使在Internet Explorer HTML5的工作,但我無法找到一個明確的解釋爲最常見的使用情況下,這將覆蓋。最常見的用例爲HTML5 SHIV /墊片JS腳本

可能有人給常見爲什麼需要這個JS腳本的情景?

此外,它是否需要在<head>或我可以把它放在我的JS的其餘部分在<body>標記的底部,這樣它就不會阻塞UI線程?

+1

這裏有一些鏈接,可以回答你的問題。 http://stackoverflow.com/questions/8275580/modernizr-vs-html-shiv http://www.themightymo.com/2012/03/23/how-to-include-html-shiv-properly/ – hagensoft

回答

4

版本9之前的Internet Explorer拒絕將任何CSS樣式應用於其無法識別的HTML元素,這包括HTML5引入的新元素。通過JavaScript DOM創建元素,它突然神奇地意識到,元素應該是真正的風格。

您可以編寫循環在要調用document.createElement(tagName) HTML5標籤名數組的天真和簡單的腳本。這可能會爲你在大多數情況下工作,但是,印刷HTML5網頁在IE和增加通過innerHTML的HTML5內容會使你此時它會是一個想法,切換到下腳進一步的問題。

HTML5毒刃可以,給我最好的知識,可如果你喜歡放置在頭部或身體標記之後。我會建議使用條件註釋,以便只有IE加載它。

+1

- @斯圖爾特,感謝偉大的解釋,其中IE的版本不能樣式的HTML5元素?你介意把這個添加到你的答案嗎? –

+1

我已經更新了答案 –