FWQ
浮动元素修改宽高,是否会触发浏览器重排?
浮动元素宽高修改是否触发重排 浮动元素相对于其前后的文档流内容产生环绕效果。本文将探寻对浮动元素反复修改宽高操作时,是否会触发浏览器的重排(layout)行为。 原理剖析 从浏览器的渲染流程来看,影响布局和的关键在于DOM(文档对象模型)的变化。浮动属性的设置会影响元素在文档流中的位置,因此改变浮动元素的宽高会引起DOM的更新。 修改元素宽高的过程涉及布局(layout),浏览器需要重新计算元素的位置和大小以适应新的尺寸。 测试验证 为了验证上述推论,我们进行如下测试:创建一个浮动图像元素,并使用JavaScript不断更改其宽高。 <div class="box"> @@##@@ </div> 登录后复制 setInterval(() => { img.dataset.height = (Number(img.dataset.height || 0) + 1) % 3; }, 1000 * 3);…