【问题标题】:CSS animation works in Chrome and Safari, but not in Firefox and Internet ExplorerCSS 动画在 Chrome 和 Safari 中有效,但在 Firefox 和 Internet Explorer 中无效
【发布时间】:2014-04-01 08:40:13
【问题描述】:

我的网站上运行了一个简单的 CSS 动画,它应该在不同时间淡入我网页的各个部分。不幸的是,我页面的这个方面只适用于 chrome 和 Safari,但不适用于 Firefox 和 IE。 在做了一些研究之后,我将淡入淡出时间帧的单位值包括在内,但这并没有带来任何改善。这是以下css:

a {
   text-decoration: none; color: #FFFFFF; position: relative;
   transition: all 0.25s linear;
   -moz-transition: all 0.25s linear;
   -webkit-transition: all 0.25s linear;
   -o-transition: all 0.25s linear;
}


/*Animations*/
@-webkit-keyframes FADEY {
   0% { opacity: 0; }
   100% { opacity: 1; }
}

.intro {
   -webkit-animation-name: FADEY;
   -webkit-animation-duration: 1s;
   -webkit-animation-timing-function: ease-in-out;
   -webkit-animation-iteration-count: 1;
 }


[role="article"] {
   -webkit-opacity: 0;
   -webkit-animation-name: FADEY;
   -webkit-animation-duration: 1s;
   -webkit-animation-timing-function: ease-in-out;
   -webkit-animation-delay: 0.5s;
   -webkit-animation-fill-mode: forwards;
   -webkit-animation-iteration-count: 1;
}


.design-selection, .design-archives {
   -webkit-opacity: 0;
   -webkit-animation-name: FADEY;
   -webkit-animation-duration: 1s;
   -webkit-animation-timing-function: ease-in-out;
   -webkit-animation-delay: 1s;
   -webkit-animation-fill-mode: forwards;
   -webkit-animation-iteration-count: 1;
}

任何建议将不胜感激。 谢谢, 科尔茨

【问题讨论】:

  • 包括所有浏览器前缀,而不仅仅是-webkit-

标签: html css google-chrome firefox


【解决方案1】:

您当前拥有用于动画的 Webkit 供应商前缀 -webkit。这就是为什么它只适用于基于 Webkit 的浏览器,例如 Chrome 和 Safari。对于旧版本的 Firefox,您还需要添加 -moz-。当前的 Firefox 和当前的 Internet Explorer 只使用真正的版本,animation,没有前缀。

.intro {
   -webkit-animation-name: FADEY;
   -webkit-animation-duration: 1s;
   -webkit-animation-timing-function: ease-in-out;
   -webkit-animation-iteration-count: 1;
   -moz-animation-name: FADEY;
   -moz-animation-duration: 1s;
   -moz-animation-timing-function: ease-in-out;
   -moz-animation-iteration-count: 1;
   animation-name: FADEY;
   animation-duration: 1s;
   animation-timing-function: ease-in-out;
   animation-iteration-count: 1;
 }

您还可以写出 CSS 速记,以尽量减少代码行数:

-webkit-animation:FADEY 1s 1 ease-in-out;
-moz-animation:FADEY 1s 1 ease-in-out;
animation:FADEY 1s 1 ease-in-out;

【讨论】:

  • 还应添加animation,不带任何前缀。
  • 谢谢。此外,对于 OP,以下是有关浏览器支持的信息:caniuse.com/css-animation
  • 非常感谢大家。你们真的很有帮助。
猜你喜欢
  • 2021-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-12
  • 1970-01-01
  • 2022-08-04
  • 1970-01-01
  • 2011-10-04
相关资源
最近更新 更多