CSS學(xué)習(xí)越深入,我們需要關(guān)注的細(xì)節(jié)之處就越多,今天我們通過(guò)11個(gè)注意點(diǎn)來(lái)提高CSS的網(wǎng)頁(yè)渲染效率。
1、十六進(jìn)制的顏色值對(duì)位數(shù)與大小寫(xiě)
編寫(xiě)十六進(jìn)制顏色值時(shí)你可能會(huì)用小寫(xiě)字母或省略成3位數(shù),關(guān)于這寫(xiě)法沒(méi)找到確實(shí)的數(shù)據(jù)證明對(duì)瀏覽器的渲染效率是否有影響,但十六進(jìn)制的顏色值默認(rèn)標(biāo)準(zhǔn)是大寫(xiě)及6位數(shù)標(biāo)注。在未知情況下不希望冒險(xiǎn)而降低了渲染的效率。
* 不贊成 – color:#f3a;
* 建議用 – color:#FF33AA;
2、display與visibility的差異
他們用于設(shè)置或檢索是否顯示對(duì)象。display隱藏對(duì)象不保留物理空間,visibility為隱藏對(duì)象保留占據(jù)的物理空間。當(dāng)瀏覽器渲染被占據(jù)的物理空間時(shí),會(huì)有所消耗資源。
* 不贊成 – visibility:hidden;
* 建議用 – display:none;
3、border:none;與border:0;的區(qū)別
和display與visibility的關(guān)系類(lèi)似,分別不保留與保留空間。更多的是border:0;盡管可以隱藏掉邊框,但它會(huì)為你保留border-color/border-style的使用權(quán)。
* 不贊成 – border:0;
* 建議用 – border:none;
4、不宜用過(guò)小的背景圖片平鋪
一張寬高1px的背景圖片,雖然文件體積非常之小,但渲染寬高500px的板塊需要重復(fù)平鋪2500次。提高背景圖片渲染效率跟圖片尺寸及體積有關(guān),最大的圖片文件體積保持約70KB。
* 不贊成 – 寬高8px以下的平鋪背景圖片
* 建議用 – 衡量適中體積及尺寸的背景圖片
5、慎用IE濾鏡
IE的濾鏡除了比較消耗資源外也有兼容性問(wèn)題。當(dāng)中有讓PNG透明的濾鏡,可采用GIF或JPG似透非透的辦法來(lái)避免使用此濾鏡。建議只在IE6應(yīng)用GIF透明,因?yàn)镮E7以上已經(jīng)支持了PNG透明。
* 不贊成,濫用IE濾鏡因?yàn)橄馁Y源外也有兼容性問(wèn)題。
* 建議用,最好選擇其它方法能避免使用濾鏡。
6、*{ margin:0; padding:0;}避免瀏覽器樣式差異
*號(hào)通配符把所有標(biāo)簽都初始化一遍,瀏覽器的渲染消耗一定的資源。有部分在標(biāo)簽在不同瀏覽器上幾乎無(wú)差異,或是某些已經(jīng)不推薦使用的標(biāo)簽(因?yàn)槟悴粫?huì)去用它),它們不需通配符要重新初始化一遍這樣做能節(jié)省一點(diǎn)資源。
* 不贊成,使用*號(hào)通配符
* 不贊成,div span button b table等標(biāo)簽納入通配符控制內(nèi)外填充樣式
* 建議用,有選擇性地使用通配符控制內(nèi)外填充樣式。
7、不要添加額外的標(biāo)簽來(lái)描述class或id
如果你有一個(gè)選擇器是以id作為關(guān)鍵選擇符,請(qǐng)不要添加多余標(biāo)簽名上去。因?yàn)镮D是唯一的,你不要為了一個(gè)不存在的理由而降低了匹配的效率。
新聞熱點(diǎn)
疑難解答
圖片精選