亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何縮短頁面的渲染時間讓頁面跑的更快些

發布時間:2021-10-11 23:00:55 來源:億速云 閱讀:161 作者:iii 欄目:移動開發

這篇文章主要介紹“如何縮短頁面的渲染時間讓頁面跑的更快些”,在日常操作中,相信很多人在如何縮短頁面的渲染時間讓頁面跑的更快些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何縮短頁面的渲染時間讓頁面跑的更快些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

怎樣盡可能的縮短瀏覽器上頁面渲染的時間,文章從以下幾方面著手:

  • 寫出高效的css代碼

  • 避免使用css表達式

  • 把css文件放在頁面頂部

  • 指定頁面圖片的尺寸

  • 頁面頭部標明文檔編碼

一,寫出高效的css代碼

首先弄清瀏覽器解析html代碼的過程:構建一個dom樹,頁面要顯示的各元素都會創建到這個dom樹當中。每當一個新元素加入到這個dom樹當中,瀏覽器便會通過css引擎查遍css樣式表,找到符合該元素的樣式規則應用到這個元素上。css引擎查找樣式表,對每條規則都按從右到左的順序去匹配。

了解過程后,我們可以看出可以從兩方面優化我們的css代碼:1,定義的css樣式規則條數越少越好,所以趕緊刪除css文件中不必要的樣式定義;2,優化每條規則的選擇符書寫方式,盡量讓css引擎一看就知道這個規則是否需要應用到當前這個元素上,讓引擎少走不必要的彎路。

如以下幾種效率不高的css書寫方式:

a, 用通配符作為關鍵選擇符(關鍵選擇符指的是每條規則最右側的選擇符)

代碼如下:

body * {...}
.hide-scrollbars * {...}

b, 用標簽做關鍵選擇符

代碼如下:


ul li a {...}
#footer h4 {...}
* html #atticPromo ul li a {...}

c, 畫蛇添足的寫法

代碼如下:

ul#top_blue_nav {...}
form#UserLogin {...}

d, 給非連接標簽添加 :hover 偽類,這會對用了strict doctype的頁面在IE7和IE8下變的很慢。

代碼如下:

h4:hover {...}
.foo:hover {...}
#foo:hover {...}
div.faa :hover {...}

優化建議:
a, 避免使用通配符;
b, 讓css引擎快速辨別該規則是否適用于當前元素:多用id或class選擇符,少用標簽選擇符;
c, 不要畫蛇添足把id和class或標簽和class等連著寫;
d, 盡量避免使用后代選擇符,去除不必要的祖先元素,可以考慮使用class選擇符來替換后代選擇符;

代碼如下:

/*給無序和有序的li定義不同顏色,你可能會這樣寫:*/
ul li {color: blue;}
ol li {color: red;}
/*給li添加class,這樣定義效率會更高:*/
.unordered-list-item {color: blue;}
.ordered-list-item {color: red;}

e, 避免給非連接標簽添加 :hover 偽類。

二,避免使用css表達式

css表達式僅在ie瀏覽器下才起作用,微軟已在ie8后不推薦使用,因為它會嚴重影響頁面性能:任何時候,不管任何一個事件被觸發,例如窗口的 resize 事件,鼠標的移動等等,css表達式都會重新計算一遍。

三,把css文件放在頁面頂部

把外聯或內聯樣式表放在body部分會影響頁面渲染的速度,因為瀏覽器只有在所有樣式表下載完成后才會繼續下載頁面其他內容。另外,內聯樣式表(放在<style>內的樣式)有可能會引起頁面重新渲染或顯示隱藏頁面中的某些元素,建議不要使用內聯樣式表。

四,指定頁面圖片的尺寸

指定頁面圖片尺寸,要符合圖片的真實尺寸(不要通過指定尺寸來縮放圖片),可以避免尺寸改變導致的頁面結構效果的變化,所以對加快頁面渲染速度有益。

五,頁面頭部標明文檔編碼

HTML文檔是以包含文檔編碼信息的數據流方式在網絡間傳輸。頁面的編碼信息一般會在HTTP響應的頭部信息或在文檔內的HTML標記中指明。客戶端瀏覽器只有在確定了頁面編碼后才能正確的渲染頁面,所以在繪制頁面或執行任何的javascript代碼前,大部分的瀏覽器(ie6、ie7、ie8除外)都會緩沖一定字節的數據來從中查找編碼信息,不同的瀏覽器當中預緩沖的字節數是不一樣的。如果瀏覽器在接收到了設定的預緩沖數據量后還沒有找到頁面的編碼信息,便會根據各自指定的默認編碼開始渲染頁面,如果這時再獲取到頁面編碼信息,而又跟現在所用編碼不一致,那整個頁面就得重新渲染,某些情況下甚至需要重新獲取數據。所以,對于大小超過1KB的頁面(根據在各瀏覽器的測試情況,預緩沖數據量最多的也就1KB)應當盡早標明編碼信息。

優化建議:
a, 盡量在HTTP頭部信息中標明頁面編碼(這個需要在服務器端設置)。像Firefox瀏覽器,如果在HTTP頭部信息就獲取到了編碼信息,便會預緩沖更少的數據從而減少不必要的數據緩沖時間;
b, 在HTML的 <head> 部分標明編碼信息;
c, 要習慣給文檔指定編碼;
d, 給頁面指定的編碼要符合頁面實際編碼;如果你在HTTP頭部信息和HTML標記中同時指定了編碼,需確保編碼信息一致。

注:文章沒有完全按google文檔原意翻譯,翻出來的文字是結合了自己的理解表達的,如有發現錯誤的地方,感謝指正。

到此,關于“如何縮短頁面的渲染時間讓頁面跑的更快些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

css
AI

玉山县| 红安县| 嘉善县| 甘洛县| 安西县| 广灵县| 上林县| 华安县| 万全县| 南城县| 元朗区| 长垣县| 鲜城| 佛冈县| 连山| 桐乡市| 永新县| 榆林市| 米泉市| 阳高县| 股票| 唐海县| 石台县| 罗源县| 延津县| 崇义县| 华蓥市| 筠连县| 天门市| 海城市| 张家口市| 桂阳县| 八宿县| 天等县| 江油市| 南乐县| 邢台市| 美姑县| 赞皇县| 青河县| 土默特右旗|