【发布时间】:2018-02-07 21:53:40
【问题描述】:
我正在用纯 css 制作一个 diaporama,到目前为止一切都很好,但是每张图片都会突然更改为另一张,我正在尝试使更改逐渐变化(一张图片慢慢消失,而另一张出现)。
我已经尝试过所有的计时功能(除了三次贝塞尔曲线,因为我还不太清楚如何使用它)但没有奏效。
如何让变化渐进?我见过有人只用 css3 做,但我无法重现它。
这是css 和html
.diapo {
width: 350px;
height: 150px;
border: 3px solid #544B4D;
background-image: url("http://via.placeholder.com/350x150/F00");
background-size: 350px 150px;
animation-name: diapo1;
animation-duration: 9s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: normal;
}
@keyframes diapo1 {
0% {
background-image: url("http://via.placeholder.com/350x150/F00");
}
33% {
background-image: url("http://via.placeholder.com/350x150/0F0");
}
66% {
background-image: url("http://via.placeholder.com/350x150/00F");
}
}
<body>
<div class="diapo">
</div>
</body>
感谢您的任何回答!
【问题讨论】:
-
我已经用公开图片更新了你的问题,结果证明它对我有用。 (Mac + 最新的 Chrome)
-
tbh,我认为您做得不对,但是以正确的方式回答会花费太多时间。基本上,您的 DOM 中应该有多个图像并为它们的不透明度设置动画。然后你只需为它们中的每一个设置不同的动画延迟。根据您拥有的图像数量进行一些计算,您应该很高兴
-
感谢您的编辑。这里还是新的。它确实有效,但不是渐进式的!会是因为 Mozilla 58 吗?
-
我的设置是渐进的
-
我觉得ff不支持这个
标签: html css css-animations keyframe