溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

前端瀏覽器渲染的5大步驟分別是什么

發(fā)布時(shí)間:2020-12-05 11:15:33 來(lái)源:億速云 閱讀:193 作者:小新 欄目:web開(kāi)發(fā)

小編給大家分享一下前端瀏覽器渲染的5大步驟分別是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

前端瀏覽器渲染的5大步驟分別是什么

瀏覽器渲染一共有五步

  • 處理 HTML 并構(gòu)建 DOM 樹(shù)

  • 處理 CSS構(gòu)建 CSSOM 樹(shù)

  • 將 DOM 與 CSSOM 合并成一個(gè)渲染樹(shù)

  • 根據(jù)渲染樹(shù)來(lái)布局,計(jì)算每個(gè)節(jié)點(diǎn)的位置

  • 調(diào)用 GPU 繪制,合成圖層,顯示在屏幕上

第四步和第五步是最耗時(shí)的部分,這兩步合起來(lái),就是我們通常所說(shuō)的渲染

重繪和回流是渲染步驟中的一小節(jié),但是這兩個(gè)步驟對(duì)于性能影響很大

重繪(Repaint)

重繪是當(dāng)節(jié)點(diǎn)需要更改外觀而不會(huì)影響布局的,比如改變 color 就叫稱為重繪。

常見(jiàn)的引起重繪的屬性:

color
border-style
visibility
background
text-decoration
outline
box-shadow

回流(Reflow)

回流是布局或者幾何屬性需要改變就稱為回流。

回流必定會(huì)發(fā)生重繪,重繪不一定會(huì)引發(fā)回流?;亓魉璧某杀颈戎乩L高的多,改變深層次的節(jié)點(diǎn)很可能導(dǎo)致父節(jié)點(diǎn)的一系列回流

常見(jiàn)引起回流屬性和方法:

添加或者刪除可見(jiàn)的DOM元素;
元素尺寸改變——邊距、填充、邊框、寬度和高度
內(nèi)容變化,比如用戶在input框中輸入文字
瀏覽器窗口尺寸改變——resize事件發(fā)生時(shí)
計(jì)算 offsetWidth 和 offsetHeight 屬性
設(shè)置 style 屬性的值

回流影響的范圍

全局范圍:從根節(jié)點(diǎn)html開(kāi)始對(duì)整個(gè)渲染樹(shù)進(jìn)行重新布局。
局部范圍:對(duì)渲染樹(shù)的某部分或某一個(gè)渲染對(duì)象進(jìn)行重新布局

以上是“前端瀏覽器渲染的5大步驟分別是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI