中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

詳解瀏覽器渲染頁面過程

發布時間:2020-08-29 17:37:44 來源:腳本之家 閱讀:129 作者:lqh 欄目:web開發

詳解瀏覽器渲染頁面過程

1.解析HTML文件,創建DOM樹

自上而下,遇到任何樣式(link、style)與腳本(script)都會阻塞(外部樣式不阻塞后續外部腳本的加載)。

2.解析CSS

優先級:瀏覽器默認設置<用戶設置<外部樣式<內聯樣式<HTML中的style樣式;
特定級:id數*100+類或偽類數*10+tag名稱*1

3.將CSS與DOM合并,構建渲染樹(renderingtree)

DOM樹與HTML一一對應,渲染樹會忽略諸如head、display:none的元素

4.布局和繪制,重繪(repaint)和重排(reflow)

重排:若渲染樹的一部分更新,且尺寸變化,就會發生重排;
重繪:部分節點需要更新,但不改變其他集合形狀。如改變某個元素的顏色,就會發生重繪。 

附:

1.重繪和重排何時會發生:

(1)增加或刪除DOM節點;
(2)display:none(重排并重繪);visibility:hidden(重排);
(3)移動頁面中的元素;
(4)增加或修改樣式;
(5)用戶改變窗口大小,滾動頁面等。

2.如何減少重繪和重排以提升頁面性能:

(1)不要一個個修改屬性,應通過一個class來修改

錯誤寫法:div.style.width="50px";div.style.top="60px";
正確寫法:div.className+=" modify";

(2)clone節點,在副本中修改,然后直接替換當前的節點;
(3)若要頻繁獲取計算后的樣式,請暫存起來;
(4)降低受影響的節點:在頁面頂部插入節點將影響后續所有節點。而絕對定位的元素改變會影響較少的元素;
(5)批量添加DOM:多個DOM插入或修改,應組成一個長的字符串后一次性放入DOM。使用innerHTML永遠比DOM操作快。(特別注意:innerHTML不會執行字符串中的嵌入腳本,因此不會產生XSS漏洞)。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

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

AI

牡丹江市| 当阳市| 丰原市| 衡山县| 钟山县| 福建省| 榆中县| 孟村| 巴彦淖尔市| 渑池县| 星座| 鸡东县| 大埔县| 志丹县| 台湾省| 克东县| 集安市| 讷河市| 汝城县| 新乡市| 苍山县| 萍乡市| 临漳县| 长白| 曲靖市| 临湘市| 句容市| 石景山区| 天祝| 盘锦市| 荃湾区| 昭平县| 南平市| 三穗县| 邳州市| 格尔木市| 石首市| 四子王旗| 凤冈县| 嘉定区| 济阳县|