【发布时间】:2019-06-17 08:03:05
【问题描述】:
我想在同一个元素上运行两个单独的关键帧变换动画,但它似乎只运行最后一个动画。有没有办法做到这一点?
我已经尝试过下面代码中的示例 (codepen),我也尝试过在元素上使用绝对位置并为 top 和 left 值设置动画。它给出了我正在寻找的效果,但它似乎不像使用translate 那样流畅。
@keyframes animate-x {
from { transform: translateX(0); } to { transform: translateX(100%); }
}
@keyframes animate-y {
from { transform: translateY(0); } to { transform: translateY(100%); }
}
.element {
width: 200px;
height: 200px;
background-color: blue;
transform-origin: center;
animation:
animate-x 20s linear infinite alternate,
animate-y 15s linear infinite alternate;
}
我希望以不同的速度同时运行 translateX 和 translateY 动画。
【问题讨论】:
-
您可以添加一个额外的容器来应用其中一个动画