瀏覽器渲染的回流和重繪-創(chuàng)新互聯(lián)

瀏覽器渲染html頁(yè)面的流程基本上分為四步:

1、計(jì)算CSS樣式
2、構(gòu)建Render Tree
3、Layout 定位坐標(biāo)和大小
4、正式開(kāi)始渲染

那么,首先要提出兩個(gè)重要概念,一個(gè)是Relfow,一個(gè)是Repaint。

創(chuàng)新互聯(lián)建站堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿(mǎn)足客戶(hù)于互聯(lián)網(wǎng)時(shí)代的陽(yáng)西網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

重繪:當(dāng)我們對(duì)DOM的修改導(dǎo)致了樣式變化,也就是說(shuō)DOM的CSS樣式發(fā)生改變,但是幾何屬性并沒(méi)有改變,比如只是修改了DOM的顏色、背景色時(shí),瀏覽器不需要重新計(jì)算元素的幾何屬性,直接為該元素繪制新的樣式。

回流:當(dāng)我們對(duì)DOM的修改改變了DOM的幾何尺寸,比如修改了元素的寬、高或隱藏元素等,那么瀏覽器需要重新計(jì)算元素的幾何屬性;因?yàn)樵撛叵噜徳氐膸缀螌傩院臀恢枚紩?huì)受到影響。然后再將計(jì)算的結(jié)果重新繪制出來(lái),這個(gè)過(guò)程稱(chēng)為回流。

我們知道,網(wǎng)頁(yè)生成的時(shí)候,至少會(huì)渲染一次。刷新和回退都會(huì)不斷的重新渲染,每次的重新渲染必然會(huì)引發(fā)回流+重繪,有時(shí)候只是重繪。

回流必然引發(fā)重繪,但是重繪則不一定會(huì)引起回流。

如果重回和回流在設(shè)置節(jié)點(diǎn)時(shí)頻發(fā)出現(xiàn),那么很大程度上影響頁(yè)面的性能?;亓魉璧某杀颈戎乩L高的多,改變父節(jié)點(diǎn)里的子節(jié)點(diǎn),會(huì)導(dǎo)致父節(jié)點(diǎn)的一系列回流。

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

1、添加或者刪除可見(jiàn)的DOM元素;

2、元素尺寸的改變,margin、padding、border、width、height

3、內(nèi)容變化,比如用戶(hù)在input框中輸入文字

4、瀏覽器窗口尺寸的改變——resize事件發(fā)生時(shí)

5、計(jì)算offsetWidth 或者offsetLeft屬性

6、設(shè)置style的屬性值

常見(jiàn)引起重繪的屬性和方法

color、border-style、visibility、background、background-image、background-size、background-position、background-repeat、border-radius、box-shadow、outline、outline-color、outline-style、outline-width

如何減少回流、重繪

使用transform代替top、使用visibility代替display:none,因?yàn)榍罢邥?huì)引起重繪而后者會(huì)引起回流。

不要把DOM節(jié)點(diǎn)作為循環(huán)變量使用。

不要使用table布局,table基本都是回流。

動(dòng)畫(huà)實(shí)現(xiàn)的速度越快,回流次數(shù)越多。

CSS選擇符從右向左匹配查找,避免節(jié)點(diǎn)層級(jí)過(guò)多。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

新聞名稱(chēng):瀏覽器渲染的回流和重繪-創(chuàng)新互聯(lián)
URL標(biāo)題:http://muchs.cn/article0/csjgio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、App開(kāi)發(fā)、云服務(wù)器、定制網(wǎng)站域名注冊(cè)、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)