我为某些元素(图像和按钮)制作了动画,以使用不透明度淡入淡出。它在Safari之外的所有浏览器上均可完美运行。当我尝试在Safari中运行时,我所有的元素都具有100%的不透明度,而看不到任何动画。

按钮元素的示例:

这是我的HTML:

<div id = "ctaButton" class="animate-fadeButton">
</div>


而我的CSS:

    #ctaButton{
        position:absolute;
        margin: auto;
        left: 26%;
        top:70%;
        padding:10px;  background: #CCC;
        background-color: rgba(255,131,15,0.5);

    }

@keyframes fadeButton {
      0%   { opacity:0; }
      25%   { opacity:0; }
      35%  { opacity:1; }
      90% { opacity:1; }
      100% { opacity:0; }
      animation-timing-function: linear;
    }
    @-o-keyframes fadeButton{
      0%   { opacity:0; }
      25%   { opacity:0; }
      35%  { opacity:1; }
      90% { opacity:1; }
      100% { opacity:0; }
      animation-timing-function: linear;
    }
    @-moz-keyframes fadeButton{
      0%   { opacity:0; }
      25%   { opacity:0; }
      35%  { opacity:1; }
      90% { opacity:1; }
      100% { opacity:0; }
      animation-timing-function: linear;
    }
    @-webkit-keyframes fadeButton{
      0%   { opacity:0; }
      25%   { opacity:0; }
      35%  { opacity:1; }
      90% { opacity:1; }
      100% { opacity:0; }
      -webkit-animation-timing-function: linear;
    }
    .animate-fadeButton {
       -webkit-animation: fadeButton 15s infinite;
       -moz-animation: fadeButton 15s infinite;
       -o-animation: fadeButton 15s infinite;
        animation: fadeButton 15s infinite;
    }

最佳答案

您需要在关键帧动画之前而不是之后设置动画名称和时间

的CSS

#ctaButton {
  position: absolute;
  margin: auto;
  left: 26%;
  top: 70%;
  padding: 10px;
  background: #CCC;
  background-color: rgba(255, 131, 15, 0.5);
}

.animate-fadeButton {
  -webkit-animation: fadeButton 15s infinite;
  -moz-animation: fadeButton 15s infinite;
  -o-animation: fadeButton 15s infinite;
  animation: fadeButton 15s infinite;
}

@keyframes fadeButton {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  35% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
  animation-timing-function: linear;
}

@-o-keyframes fadeButton {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  35% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
  animation-timing-function: linear;
}

@-moz-keyframes fadeButton {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  35% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
  animation-timing-function: linear;
}

@-webkit-keyframes fadeButton {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  35% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
  -webkit-animation-timing-function: linear;
}

09-25 18:04
查看更多