【发布时间】:2015-06-10 17:41:28
【问题描述】:
在处理动画时,我遇到了一个未记录的意外行为:
当使用 transform(任何 transform 属性,并且只有 transform 属性)链接动画时,第一个动画将具有从状态 A 转换到状态 B 的预期行为,而第二个动画将只是从 B 到 C 没有任何转换.
div {
background:red;
width:100px;
height:100px;
-webkit-animation: in 2s, out 2s 3s forwards;
animation: in 2s, out 3s 2s forwards;
}
@keyframes in {
from {
transform: scale(0);
}
to {
transform: scale(1);
}
}
@keyframes out {
from {
transform: scale(1);
}
to {
transform: scale(.5);
}
}
@-webkit-keyframes in {
from {
-webkit-transform: scale(0);
}
to {
-webkit-transform: scale(1);
}
}
@-webkit-keyframes out {
from {
-webkit-transform: scale(1);
}
to {
-webkit-transform: scale(.5);
}
}
<div></div>
我知道在这种特殊情况下,事情可以一步完成,但这不是我正在寻找的解决方案
如何仅使用 CSS 解决这个问题?
更新:在 Firefox 中似乎一切正常,这可能是 chrome 错误吗?
更新 2:根据要求添加了无前缀动画;变化不大。
【问题讨论】:
-
您是否只针对 Chrome 浏览器/?为什么不遵守标准
-
你指的是哪个标准?
-
@KheemaPandey 刚刚在 Firefox 上尝试过,一切正常。现在我想知道这是否是一个 chrome 错误。
-
@Stephan Muller:无前缀
@keyframes,仅此而已。 -
我在说为什么使用浏览器特定的前缀..标准是
@keyframes
标签: css transform css-transitions css-animations