如何使用多个关键帧定义循环css动画?

前端之家收集整理的这篇文章主要介绍了如何使用多个关键帧定义循环css动画?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
问题

我有两个css关键帧动画,我在一个元素上运行:

  1. .fade-bg {
  2. animation-name: fade-bg-1,fade-bg-2;
  3. animation-delay: 0,6s;
  4. animation-iteration-count: infinite;
  5. animation-direction: alternate;
  6. }

动画定义如下:

  1. @keyframes fade-bg-1 {
  2.  
  3. from {
  4. opacity: 0;
  5. background-image: url(image-1.jpg);
  6. }
  7.  
  8. 50% {
  9. opacity: 1;
  10. background-image: url(image-1.jpg);
  11. }
  12.  
  13. to {
  14. opacity: 0;
  15. background-image: url(image-1.jpg);
  16. }
  17.  
  18. }
  19.  
  20. @keyframes fade-bg-2 { /* Same as fade-bg-1 only with image-2.jpg */ }

上面的工作,但当它到达第二个动画时,它不断重复该动画,不会循环回fade-bg-1.

我尝试了许多不同的动画方向组合,但无济于事.

问题

如何使动画返回到fade-bg-1并重复自身?

这个例子

EXAMPLE

解决方法

没有JavaScript,我认为你不能.但是,您可以使用单个关键帧动画实现相同的效果.
  1. .fade-bg {
  2. animation-name: fade-bg;
  3. animation-delay: 0;
  4. animation-iteration-count: infinite;
  5. animation-direction: forward;
  6. }
  7.  
  8.  
  9. @keyframes fade-bg {
  10. 0% {
  11. opacity: 0;
  12. background-image: url('image-1.jpg');
  13. }
  14.  
  15. 25% {
  16. opacity: 1;
  17. background-image: url('image-1.jpg');
  18. }
  19.  
  20. 50% {
  21. opacity: 0;
  22. background-image: url('image-1.jpg');
  23. }
  24.  
  25. 51% {
  26. opacity: 0;
  27. background-image: url('image-2.jpg');
  28. }
  29.  
  30. 75% {
  31. opacity: 1;
  32. background-image: url('image-2.jpg');
  33. }
  34.  
  35. 100% {
  36. opacity: 0;
  37. background-image: url('image-2.jpg');
  38. }
  39. }

EXAMPLE

猜你在找的CSS相关文章