瀏覽器的重排與重繪

瀏覽器下載完頁面中的所有組件——HTML標記枫振、JavaScript柑营、CSS、圖片之后會解析生成兩個內(nèi)部數(shù)據(jù)結(jié)構(gòu)——DOM樹和渲染樹泊愧。
DOM樹表示頁面結(jié)構(gòu)伊磺,渲染樹表示DOM節(jié)點如何顯示。DOM樹中的每一個需要顯示的節(jié)點在渲染樹種至少存在一個對應(yīng)的節(jié)點(隱藏的DOM元素disply值為none 在渲染樹中沒有對應(yīng)的節(jié)點)删咱。渲染樹中的節(jié)點被稱為“幀”或“盒",符合CSS模型的定義屑埋,理解頁面元素為一個具有填充,邊距痰滋,邊框和位置的盒子摘能。一旦DOM和渲染樹構(gòu)建完成,瀏覽器就開始顯示(繪制)頁面元素敲街。
當DOM的變化影響了元素的幾何屬性(寬或高)团搞,瀏覽器需要重新計算元素的幾何屬性,同樣其他元素的幾何屬性和位置也會因此受到影響多艇。瀏覽器會使渲染樹中受到影響的部分失效逻恐,并重新構(gòu)造渲染樹。這個過程稱為重排峻黍。完成重排后复隆,瀏覽器會重新繪制受影響的部分到屏幕,該過程稱為重繪奸披。由于瀏覽器的流布局昏名,對渲染樹的計算通常只需要遍歷一次就可以完成。但table及其內(nèi)部元素除外阵面,它可能需要多次計算才能確定好其在渲染樹中節(jié)點的屬性轻局,通常要花3倍于同等元素的時間。這也是為什么我們要避免使用table做布局的一個原因样刷。
并不是所有的DOM變化都會影響幾何屬性仑扑,比如改變一個元素的背景色并不會影響元素的寬和高,這種情況下只會發(fā)生重繪置鼻。
==重排何時發(fā)生==
很顯然温算,每次重排添诉,必然會導致重繪半哟,那么快毛,重排會在哪些情況下發(fā)生愈犹?
1、添加或者刪除可見的DOM元素
2、元素位置改變
3、元素尺寸改變
4蛛碌、元素內(nèi)容改變(例如:一個文本被另一個不同尺寸的圖片替代)
5、頁面渲染初始化(這個無法避免)
6辖源、瀏覽器窗口尺寸改變

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蔚携,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子克饶,更是在濱河造成了極大的恐慌酝蜒,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件矾湃,死亡現(xiàn)場離奇詭異亡脑,居然都是意外死亡,警方通過查閱死者的電腦和手機洲尊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進店門远豺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來奈偏,“玉大人坞嘀,你說我怎么就攤上這事【矗” “怎么了丽涩?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵,是天一觀的道長裁蚁。 經(jīng)常有香客問我矢渊,道長,這世上最難降的妖魔是什么枉证? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任矮男,我火速辦了婚禮,結(jié)果婚禮上室谚,老公的妹妹穿的比我還像新娘毡鉴。我一直安慰自己,他們只是感情好秒赤,可當我...
    茶點故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布猪瞬。 她就那樣靜靜地躺著,像睡著了一般入篮。 火紅的嫁衣襯著肌膚如雪陈瘦。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天潮售,我揣著相機與錄音痊项,去河邊找鬼锅风。 笑死,一個胖子當著我的面吹牛鞍泉,可吹牛的內(nèi)容都是我干的遏弱。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼塞弊,長吁一口氣:“原來是場噩夢啊……” “哼漱逸!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起游沿,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤饰抒,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后诀黍,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體袋坑,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年眯勾,在試婚紗的時候發(fā)現(xiàn)自己被綠了枣宫。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡吃环,死狀恐怖也颤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情郁轻,我是刑警寧澤翅娶,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站好唯,受9級特大地震影響竭沫,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜骑篙,卻給世界環(huán)境...
    茶點故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一蜕提、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧靶端,春花似錦谎势、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至镣煮,卻和暖如春姐霍,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工镊折, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留胯府,地道東北人。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓恨胚,卻偏偏與公主長得像骂因,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子赃泡,可洞房花燭夜當晚...
    茶點故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容