重绘:
比如 background-color、font-size 等,这些属性的改变不会影响页面的结构布局,只会影响内容的变化,即这些属性的改变将会引起浏览器的重绘
回流:
比如 padding、margin、height 等,改变这些属性会影响页面的结构布局,即改变这些属性会引起浏览器的回流
为什么咱们老是说,要尽量避免操作 DOM 呢?
就是因为回流和重绘会消耗性能,如果老是操作 DOM ,浏览器哪能受得了这个啊,
不过也不要因为这个太过谨慎,现在的浏览器非常聪明,很多浏览器都有优化操作 DOM 的行为,
实际上浏览器会维护一个队列,把所有的会引起回流、重绘的操作放入这个队列中,等队列中的操作到达一定数量,或者是到达了一定的时间,浏览器就会 flush 这个队列,进行一次批处理。
这就会让多次的回流、重绘变成一次回流重绘。
这样就会节省很多性能。
ok完结,撒花 🌸✨🌼🌻🌺