【发布时间】:2014-08-28 09:21:57
【问题描述】:
我正在尝试编写一个简单的 CSS 淡入淡出动画,它可以在 4 个不同的图像之间转换,但它不适用于任何版本的 Firefox(我正在 v.30 上测试)、Internet Explorer 或 Opera。不过,它在 Chrome 和 Safari 中运行良好。
我已经查看了所有类似的问题,但遗憾的是没有有效的解决方案。非常奇怪的是,我有一个更复杂的交叉淡入淡出动画,它使用缓入和缓出在图像之间工作和转换,并且在所有浏览器上都运行良好。 (我以后可能会发布以供参考)
我已经尝试过使用和不使用单个浏览器的标记,结果相同。另外,我听说通用标记应该总是放在最后,但这样做会产生相同的结果。
HTML:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="crossfade.css">
</head>
<div id="crossfade">
</div>
</html>
CSS:
#crossfade {
width: 1000px;
height: 200px;
-webkit-backface-visibility: hidden;
-webkit-animation: myfirst 30s infinite; /* Chrome, Safari, Opera */
-moz-animation: myfirst 30s infinite ;
-o-animation: myfirst 30s infinite;
-ms-animation: myfirst 30s infinite;
animation: myfirst 30s infinite;
}
@-webkit-keyframes myfirst {
0% {background-image:url('images/summerbg1.png');}
35% {background-image:url('images/summerbg2.png');}
75% {background-image:url('images/summerbg3.png');}
100% {background-image:url('images/summerbg4.png');}
}
@-moz-keyframes myfirst {
0% {background-image:url('images/summerbg1.png');}
35% {background-image:url('images/summerbg2.png');}
75% {background-image:url('images/summerbg3.png');}
100% {background-image:url('images/summerbg4.png');}
}
@-o-keyframes myfirst {
0% {background-image:url('images/summerbg1.png');}
35% {background-image:url('images/summerbg2.png');}
75% {background-image:url('images/summerbg3.png');}
100% {background-image:url('images/summerbg4.png');}
}
@-ms-keyframes myfirst {
0% {background-image:url('images/summerbg1.png');}
35% {background-image:url('images/summerbg2.png');}
75% {background-image:url('images/summerbg3.png');}
100% {background-image:url('images/summerbg4.png');}
}
@keyframes myfirst {
0% {background-image:url('images/summerbg1.png');}
35% {background-image:url('images/summerbg2.png');}
75% {background-image:url('images/summerbg3.png');}
100% {background-image:url('images/summerbg4.png');}
}
【问题讨论】:
-
您可以创建四个单独的 div(每个 bg 一个)并使用不透明度将它们淡入淡出。
-
根据 MDN background-image 是不可动画的,所以我很惊讶它在 chrome 中完全有效。 developer.mozilla.org/en-US/docs/Web/CSS/…
-
@RobErskine 我会考虑这样做并发布我的结果。
标签: css internet-explorer firefox opera