transform: translateX(100%) → 0抽屉本来就占好位置,只是平移图层;主线程忙也顺。
动效 · 克制与性能
动画是否流畅取决于每帧要做多少工作:只动 transform 和 opacity,并在降速和真机条件下验收。
两条跑道上的卡片走同样的路线,区别只是动画改的是哪个属性。切换设备负载、换属性,看卡片本身和下面的帧条怎么变。
两条跑道上,同一张商品卡做同样距离、同样时长的来回移动,只是 AI 用了不同的属性。先在空闲状态下看,再切到“中低端手机”。
点「播放对比」后看这张卡怎么动
点「播放对比」后看这张卡怎么动
第一步:保持“空闲”播放一次,两条跑道看起来一样顺。
transform: translateX(100%) → 0抽屉本来就占好位置,只是平移图层;主线程忙也顺。
先瞬间到最终高度,再用 transform 做缩放过渡布局只算一次,动画过程交给合成。
right: -320px → 0每帧都重新布局整页,手机上会掉帧,还可能挤动旁边内容。
* { will-change: transform }每个元素都单独占一块图层内存,手机反而更卡、更耗电;只给正在动的少数元素用。
AI 说“侧边栏展开动画已优化,我在电脑上测试 60fps 很流畅”,代码里动画改的是 width。你下一步最该做什么?
术语的技术定义和行为以这些一手或权威资料为准。
和本知识点经常一起出现的概念。
看看真实的项目蓝图里,动效性能是怎么被用上的。