### 瀏覽器渲染流程
~~~
解析html->
解析css->
結合dom樹和css生成渲染樹render tree->
進行布局(回流)->
進行重繪,將render tree的樣式渲染到屏幕上
~~~
~~~
1.瀏覽器向服務端發送請求
2.解析html,生成dom樹
3.解析css,生成cssom樹
4.將dom樹和cssom樹結合,去除不可見元素,生成渲染樹render tree
5.根據生成的渲染樹,進行布局layout,得到幾何信息(回流)
6.根據render tree以及回流得到的幾何信息,將render tree的像素渲染到屏幕上
~~~
以上六個步驟
* * *
> 生成渲染樹render tree流程解析
~~~
1.從dom樹的根節點開始遍歷每個可見節點
2.對于每個可見的節點,找到cssom樹種對應的規則,并應用,生成渲染樹
~~~
> css加載是否會阻塞dom樹渲染
~~~
1.css的下載是異步的,不會阻塞dom樹解析(解析不是渲染)
2.但是在生成渲染樹render tree的過程需要結合cssom樹,所以css加載會阻塞render樹的渲染
~~~
- 空白目錄
- 1. css選擇器
- 1.1 基礎選擇器
- 1.2 偽類
- 1.3 first-child與:first-of-type的區別
- 1.4 nth-child(:not())與nth-of-type(:not())
- 1.5 屬性選擇器
- 2. html標簽分類&css樣式繼承
- 2.1 html標簽分類
- 2.2 樣式繼承
- 2.3 font
- 3. css動畫
- 1. transition
- 2. animation
- 4. 布局位置方面
- 4.1 實現圖片左右垂直居中
- 4.2 父元素中第一個子元素margin-top無效問題
- 4.3 position定位
- 5. 關于浮動
- 5.1 浮動的呈現效果
- 5.2 清除浮動的三種方式
- 5.3 inline-block與block浮動的對比
- 6. 彈性布局
- 7. border
- 7.1 添加border不影響盒子大小的三種方式
- 7.2 利用border畫三角形
- 8. css預處理--sass
- 8.1 變量
- 8.2 嵌套
- 8.3 導入SASS文件
- 8.4 靜默注釋
- 8.5 混合器@mixin
- 8.6 繼承@extend
- 8.7.function
- ! element語法
- 9. grid 布局
- 10. filedset 使用
- css面試題
- 1.題目匯總
- 2.回流(重排)和重繪
- 3.瀏覽器渲染流程
- 4.水平垂直居中
- 5.flex布局