css優(yōu)化,提高性能的方法有哪些

加載性能:

1 css壓縮:將寫好的css進(jìn)行打包壓縮,可以減少很多的體積;

2 css單一樣式:當(dāng)需要下邊距和左邊距的時(shí)候,

很多時(shí)候選擇:margin: top 0 bottom 0;

但 margin-bottom: bottom;margin-left: left;執(zhí)行的效率更高;

3 減少使用 @import, 而建議使用link, 因?yàn)楹笳咴陧撁婕虞d時(shí)一起加載,前者 是等待頁面加載完成之后再進(jìn)行加載;

選擇器性能:

CSS選擇符是從右到左進(jìn)行匹配的。當(dāng)使用后代選擇器的時(shí)候,瀏覽器會(huì)遍歷所有子元素來確定是否是指定的元素等等;

**避免使用通配規(guī)則**

如*{} 計(jì)算次數(shù)驚人!只對需要用到的元素進(jìn)行選擇

**盡量少的去對標(biāo)簽進(jìn)行選擇,而是用class**

如:#nav li{},可以為li加上nav_item的類名,如下選擇.nav_item{}

**不要去用標(biāo)簽限定ID或者類選擇符**

如:ul#nav,應(yīng)該簡化為#nav

**盡量少的去使用后代選擇器,降低選擇器的權(quán)重值**

后代選擇器的開銷是最高的,盡量將選擇器的深度降到最低,最高不要超過三層,更多的使用類來關(guān)聯(lián)每一個(gè)標(biāo)簽元素

**考慮繼承**

了解哪些屬性是可以通過繼承而來的,然后避免對這些屬性重復(fù)指定規(guī)則

渲染性能:

1.慎重使用高性能屬性:浮動(dòng)、定位;

2.盡量減少頁面重排、重繪;

重排按照css的書寫順序:

·位置:positon、top、left、z-index、float、dispay

·大?。簑idth、height、margin、padding

·文字系列: font、line-height、color、letter-spacing

·背景邊框:background、 border

·其它:anmation、transition

重繪:border、outline、background、box-shadow,能使用background-color,就盡量不要使用background;

3.去除空規(guī)則:{};

4.屬性值為0時(shí),不加單位;

5.屬性值為浮動(dòng)小數(shù)0.**,可以省略小數(shù)點(diǎn)之前的0;

6.標(biāo)準(zhǔn)化各種瀏覽器前綴:帶瀏覽器前綴的在前。標(biāo)準(zhǔn)屬性在后;

7.不使用@import前綴,它會(huì)影響css的加載速度;

8.充分利用css繼承屬性,減少代碼量;

9.抽象提取公共樣式,減少代碼量;

10.選擇器優(yōu)化嵌套,盡量避免層級過深;

11.css雪碧圖,同一頁面相近部分的小圖標(biāo),方便使用,減少頁面的請求次數(shù),但是同時(shí)圖片本身會(huì)變大,使用時(shí),優(yōu)劣考慮清楚,再使用;

12.將css文件放在頁面最上面

可維護(hù)性、健壯性:

1 將具有相同屬性的樣式抽離出來,整合并通過class在頁面中進(jìn)行使用,提高css的可維護(hù)性;

2 繼上一條,oocss也是提高css性能的途徑之一,通過定義可復(fù)用的、語義化良好的基礎(chǔ)類,然后添加到html中,這也是很多ui框架都在使用的一種方法,例如:class="btn btn-active btn-blue";

3 樣式與內(nèi)容分離:講css代碼定義到外部css中;

4 容器與樣式分離;

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,090評論 1 92
  • 轉(zhuǎn)載請聲明 原文鏈接地址 關(guān)注公眾號獲取更多資訊 第一部分 HTML 第一章 職業(yè)規(guī)劃和前景 職業(yè)方向規(guī)劃定位...
    前端進(jìn)階之旅閱讀 16,853評論 32 459
  • 選擇qi:是表達(dá)式 標(biāo)簽選擇器 類選擇器 屬性選擇器 繼承屬性: color,font,text-align,li...
    wzhiq896閱讀 2,101評論 0 2
  • 清晨打著手電筒看弗洛姆《愛的藝術(shù)》之《愛的實(shí)踐》時(shí)提到掌握藝術(shù)的一個(gè)必要條件是“集中”,其中一個(gè)地方是這么表述的“...
    小小洪閱讀 563評論 1 0
  • 今天距離開學(xué)還有三天。 不想離開家,嗯真的不想。我曾經(jīng)的雄心壯志早就隨風(fēng)飄散在時(shí)光里。我曾經(jīng)的離家越遠(yuǎn)越好的想法現(xiàn)...
    燝瑜閱讀 189評論 0 0

友情鏈接更多精彩內(nèi)容