webkit-transform: translateX(3em)
的方案代替使用left: 3em
,因为left
会额外触发layout与paint,而webkit-transform
只触发整个页面compositediv {
-webkit-animation-duration: 5s;
-webkit-animation-name: move;
-webkit-animation-iteration-count: infinite;
-webkit-animation-direction: alternate;
width: 200px;
height: 200px;
margin: 100px;
background-color: #808080;
position: absolute;
}
@-webkit-keyframes move{
from {
left: 100px;
}
to {
left: 200px;
}
}
如下图使用left
将持续触发页面重绘,表现为红色边框:
@-webkit-keyframes move{
from {
-webkit-transform: translateX(100px);
}
to {
-webkit-transform: translateX(200px);
}
}
如下图使用-webkit-transform
页面只发生重组,表现为橙色边框:
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8