CSS渲染和動畫

實現(xiàn)一個動畫,有三種實現(xiàn)方式,我們將首先分別介紹三種方式,之后會根據(jù)瀏覽器渲染原理分析哪種方式最好

1. 通過設(shè)定 position 及 left、top 等

2. 通過 transform + transition

3. 用 animation

其實還是用的 transform 實現(xiàn)的,只不過可以在別處獨立聲明,多次使用

關(guān)于transition的總結(jié)

有一些屬性不能用transition

  • 比如 display: block 變成 display: none

關(guān)于animation的總結(jié)

animation組成部分

  1. 關(guān)鍵幀 keyframes
  2. animation 屬性

因為我們可以在任意一個點指定關(guān)鍵幀,所以animation可以用來做更復(fù)雜的動畫

瀏覽器渲染原理

瀏覽器渲染的過程:

  1. 根據(jù)HTML標記并構(gòu)建DOM樹
  2. 根據(jù)CSS構(gòu)建CSS樹(CSSOM)
  3. 將兩棵樹合并成一棵渲染樹(render tree)
  4. layout布局(文檔流,盒模型,計算大小或位置等)
  5. paint繪制(邊框顏色,背景顏色,陰影等繪制)
  6. compose合成(根據(jù)層疊關(guān)系展示畫面)
Snipaste_2020-10-18_14-26-01.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容