越來越多的網站開始使用 HTML5 標籤,但目前的情況是還有很多人在使用IE6、IE7、IE8。為了讓所有瀏覽者都可以正常的訪問,解決方案有下面兩個:
1.為網站創建多套模板,透過程式對User-Agent的判斷為不同的瀏覽器用戶顯示不同的頁面,例如:優酷網。
2.使用Javascript來使不支援HTML5的瀏覽器支援HTML標籤。
針對IE比較好的解法是html5shiv。 htnl5shiv主要解決HTML5提出的新的元素不被IE6-8識別,這些新元素不能作為父節點包裹子元素,並且不能應用CSS樣式。讓CSS 樣式套用在未知元素上只需執行 document.createElement(elementName) 即可實作。 html5shiv就是根據這個原理創建的。
html5shiv的使用非常的簡單,考慮到IE9是支援html5的,所以只需要在頁面head中加入以下程式碼即可:
Selepas menambah kod di atas, kesan yang dipaparkan dalam IE8 adalah seperti berikut:
Kod JavaScript untuk mencipta nod dalam contoh tapak tapak kelihatan terlalu kembung dan kod yang disediakan oleh smashingmagazine nampaknya lebih ringkas.
Demonstrasi adalah seperti berikut
Petua: Anda boleh mengubah suai sebahagian daripada kod sebelum menjalankan
Kod tersebut adalah seperti berikut:
HTML5 berkelakuan secara lalai Untuk menyusun elemen ini, kita perlu menggunakan CSS untuk menukarnya secara manual kepada elemen blok, seperti dalam contoh berikut:
pengepala, pengaki, navigasi, bahagian, artikel {
paparan:sekat;