定义包含旋转和缩放的关键帧,如@keyframes spinAndGrow {0%{transform:rotate(0deg) scale(1);}100%{transform:rotate(360deg) scale(1.5);}},再将动画绑定到元素并设置持续时间与重复次数,如animation:spinAndGrow 2s ease-in-out infinite,即可实现组合动画,注意transform函数顺序可能影响视觉效果,且该属性性能优良,适用于现代浏览器。
在CSS中实现旋转和缩放的组合动画,可以通过@keyframes配合transform属性完成。只需要在一个关键帧规则中同时定义rotate()和scale(),浏览器会自动合并这些变换效果。
使用@keyframes创建动画序列,在不同时间点设置transform的多个函数组合:
@keyframes spinAndGrow {
0% {
transform: rotate(0deg) scale(1);
}
100% {
transform: r
otate(360deg) scale(1.5);
}
}
上面的动画从不旋转、原始大小开始,到旋转一圈并放大1.5倍结束。你也可以加入中间状态让动画更丰富:
@keyframes spinAndGrow {
0% { transform: rotate(0deg) scale(1); }
50% { transform: rotate(180deg) scale(1.2); }
100% { transform: rotate(360deg) scale(1.5); }
}
将定义好的关键帧绑定到目标元素,并设置持续时间、重复次数等:
.animated-element {
width: 100px;
height: 100px;
background: #3498db;
animation: spinAndGrow 2s ease-in-out infinite;
}
这样该元素就会持续进行旋转加缩放的组合动画。
使用transform多属性动画时,有几个关键点要留意:
transform-origin: center center;等值。