【发布时间】:2021-05-29 19:11:05
【问题描述】:
我想在循环中的图像之间淡入淡出(就像这里的结果-jsfiddle.net/5M2PD)但纯粹是通过CSS,而不是JavaScript。我尝试使用关键帧,但没有成功。请帮忙。
@keyframes cf3FadeInOut {
0% {
opacity:1;
}
45% {
opacity:1;
}
55% {
opacity:0;
}
100% {
opacity:0;
}
}
#cf3 img.top {
animation-name: cf3FadeInOut;
animation-timing-function: ease-in-out;
animation-iteration-count: infinite;
animation-duration: 10s;
animation-direction: alternate;
}
【问题讨论】:
-
对于未来来说这可能是一个有趣的想法,但我认为大多数当前的浏览器不会喜欢@keyframes - 甚至更多,因为大多数人不使用最新版本。
-
感谢 MightyPork 的建议。还有其他选择吗?仅适用于 CSS?
-
我不这么认为.. 就个人而言,我会坚持使用 JS,但如果这不是一个选项,我不知道。
-
动画在大多数浏览器中仍然带有前缀(-webkit-animation、-webkit-keyframes),这可能是您的问题的一部分。澄清一下,您要将 top 应用于下一张图像,然后您希望该图像淡入?您可以为此使用过渡,而不是动画。
-
这里有一篇很有帮助的帖子:devtwins.com/blog/css-cross-fading-images