避免使用@import
外部的CSS檔案中使用@import會讓頁面在載入時增加額外的延遲。
一個CSS檔案first.css包含了以下內容:@import url(“second.css”)。瀏覽器先把first.css下載、解析、執行後,發現並處理第二個檔案second.css。簡單的 解決方法是使用標記來替代@import,並行下載CSS文件,從而加快頁面加載速度.
避免AlphaImageLoader濾鏡
什麼是AlphaImageLoader? IE獨有屬性,用於修正7.0以下版本中顯示PNG圖片的半透明效果。
問題:瀏覽器載入圖片時它會終止內容的呈現並且凍結瀏覽器,在每一個元素(不只是圖片)它都會運算一次,增加了記憶體開支。
解決方案:1、PNG8格式來代替,這種格式能在IE中很好地運作。
2、確實需要使用AlphaImageLoader,使用底線_filter,使IE7以上版本的使用者無效。
避免CSS表達式
範例:
background-color: expression((new Date()).getHours()%2?"#FFFFFF": "#000000" );
CSS表達式是動態設定CSS屬性的強大(但危險)方法。 Internet Explorer從第5個版本開始支援CSS表達式。
問題:在頁面顯示和縮放、捲動、移動滑鼠時都會要 重新計算一次。給CSS表達式增加一個計數器可以追蹤表達式的計算頻率。在頁面中隨便移動滑鼠都可以輕鬆達到10000次以上的計算量。
解決:減少CSS表 達式計算次數的方法就是使用一次性的表達式,它在第一次運行時將結果賦給指定的樣式屬性,並用這個屬性來代替CSS表達式。如果樣式屬性必須在頁面週期內 動態地改變,使用事件句柄來取代CSS表達式是一個可行辦法。如果必須使用CSS表達式,一定要記住它們要計算成千上萬次並且可能會對你頁面的性能產生影 響。
避免通配選擇器
在學習CSS初期,我們在做網頁的時候經常會使用*{margin:0;padding:0;},以此來消除標籤的默認佈局和不同瀏覽器對於同一個標籤的渲染。
而我們有時候會看到reset的寫法。
body,p,h1,h2,h3,h4,h5,input,select,textarea,table{margin:0;padding:0;}
這些人為什麼要這麼寫,下面的內容我們會得到答案
例:
#header > a {font-weight:blod;}
##CSS選擇器是從右到左進行規則比對。所以在瀏覽器中這條語句實作為:
瀏覽器遍歷頁面中所有的a元素->其父元素的id是否為header。 範例:
#header a {font-weight:blod;}
這個例子比上一個消耗的時間更多
#################### 遍歷頁面中所有a元素->向其上級遍歷直到根節點##################################### ###########範例:######
.selected * {color: red;}#############
#符合文件中所有的元素->分別向上逐級匹配class為selected的元素,直到文檔的根節點
#所以我們應該避免使用萬用選擇器。
#移除無符合的樣式
第一,刪除無用的樣式後可以縮減樣式檔案的體積,加快資源下載速度;
第二,對於瀏覽器而言,所有的樣式規則的都會被解析後索引起來,即使是目前頁面無符合的規則。移除無符合的規則,減少索引項,加快瀏覽器尋找速度;
避免單一規則的屬性選擇器
瀏覽器符合所有的元素->檢查是否有href屬性且herf屬性值等於”#index」—>分別向上逐級匹配class為selected的元素,直到文檔的根節點。
避免類別正規的屬性選擇器
正規表示式匹配會比基於類別的匹配會慢很多。大部分情況下我們應盡量避免使用 *=, |=, ^=, $=, 和 ~=語法的屬性選擇器。
以上是CSS解讀前端效能優化的具體分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

文章討論了CSS保證金屬性,特別是“保證金:40px 100px 120px 80px”,其應用程序以及對網頁佈局的影響。

本文討論了CSS邊境屬性,重點是自定義,最佳實踐和響應能力。主要論點:邊境 - 拉迪烏斯(Border-Radius)對響應式設計最有效。

本文討論了CSS中評論的使用,詳細介紹了單線和多行評論語法。它認為註釋可以增強代碼的可讀性,可維護性和協作,但如果無法正確管理,可能會影響網站性能。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3漢化版
中文版,非常好用

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具