为什么有时候⽤ translate 来改变位置⽽不是修改元素定位的方式?
本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。
为什么有时候⽤ translate 来改变位置⽽不是修改元素定位的方式?
本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。
transform
相比 absolute
,可以利用 GPU 加速。所以动画的时候使用 transform
性能会提高非常多10 回答11.1k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
5 回答2k 阅读
改变元素的
transform
不会触发重排或重绘,只会触发复合。使用改变元素定位的方式可能会触发重排。而且在修改
transform
来变更元素位置时会更加顺滑,使用修改元素定位比如说left
、right
之类的属性是在一些场景下即使元素脱离了文档流,也会出现卡顿的情况。