雖然后來微軟對瀏覽器進行了大量的研發(fā),但事實是現(xiàn)代ie瀏覽器在大多數(shù)時候比基于webkit的瀏覽器以及火狐要落后一些。我們也還需要適配早期版本的ie。下面的方法會讓你的網(wǎng)站更快,甚至在微軟旗艦瀏覽器上奇跡般地運行得更好!
htmlshiv.js
remy的html5shiv通過javascript來創(chuàng)建html5元素(如main,header,footer等).在某種程度上通過javascript創(chuàng)建的元素是styleable(可樣式)的。我們可以花很多時間來思考其運行原理,但誰會在乎呢?這種策略在所有產(chǎn)品網(wǎng)站上仍然是必須使用的.
代碼如下:
<!--[ifltie9]>
<scriptsrc=dist/html5shiv.js></script>
<![endif]-->
selectivizr.js
selectivizr.js是一個不可思議的資源,用于填充不支持的css選擇器和屬性,包括重要的last-child。在最近的重設計中,我嵌入了selectivizr,并在更老的ie瀏覽器上也不會錯過任何細節(jié)。下面是我的實現(xiàn)代碼:
代碼如下:
<!--[iflteie8]><scriptsrc=js/libs/selectivizr.js></script><![endif]-->
現(xiàn)代項目絕對必須的。只在老ie時才加載
<html>conditionalcomments
下面這樣最土的情況你肯定看到過。但無論丑陋與否,事實上這段代碼完全按預期的方式運行:
代碼如下:
<!doctypehtml>
<!--[ifltie7]><htmlclass=ie6lang=en><![endif]-->
<!--[ifie7]><htmlclass=ie7lang=en><![endif]-->
<!--[ifie8]><htmlclass=ie8lang=en><![endif]-->
<!--[ifie9]><htmlclass=ie9lang=en><![endif]-->
<!--[if(gtie9)|!(ie)]><!--><htmllang=en><!--<![endif]-->
這個代碼片段不需要或等待javascript,而且也不需要重量級的javascript庫。你定義的styles類立即生效,還沒有閃屏。
盡管internetexplorer正在迎頭趕上競爭對手,但事實上老的ie瀏覽器仍然比較流行,特別是在發(fā)展中國家。好消息是,這些資源在所有現(xiàn)代瀏覽器上運行良好,代價也并不高!
2025國考·省考課程試聽報名