【发布时间】:2021-09-28 13:10:53
【问题描述】:
根据MDN
p {
animation-duration: 3s;
animation-name: slidein;
animation-iteration-count: infinite;
animation-direction: alternate;
}
等价于
p {
animation: 3s infinite alternate slidein;
}
在同一个元素上应用多个动画可以通过以下方式实现:
<div></div>
@keyframes animScale{
from{
transform: scale(0.2, 0.2);
}
to{
transform: scale(1, 1);
}
}
@keyframes animOpacity{
from{
opacity: 0;
}
to{
opacity: 1;
}
}
div{
width: 200px;
height: 200px;
background: red;
animation: animScale 2000ms ease-in-out infinite,
animOpacity 2000ms ease-in-out infinite;
}
有没有办法可以将animation-delay 写入属性animation,这样我就可以有两个从不同时间开始的动画?
【问题讨论】:
-
可以,只要在
2000ms后面再加一个时间,animation速记中的第二个时间值就被认为是animation-delay -
@HaoWu 实际上应该在缓动之后进行(AKA 计时功能)