htmlcssanimationfading

CSS animation, fade in fade out opacity on automated slideshow


I want to make a slideshow where the pictures transition through fade in fade out opacity. it just glooms on the screen and switches to the next picture.

I got it to work but added the other brower webkits and it stopped working. Can't seem to find my mistake.. The slideshow still works.

This is the code:

/* Fading animation in css */
.fade {
-webkit-animation-name: fade 5s;
animation-name: fade 5s;
-moz-animation: fade 5s;
-o-animation: fade 5s;
}

@-webkit-keyframes fade {
0% {opacity: 0.2} 
50% {opacity: 1}
100% {opacity:0.2}
}

@-moz-keyframes fade{
    0% {opacity: 0.2} 
  50% {opacity: 1}
  100% {opacity:0}  
}

@keyframes fade {
  0% {opacity: 0.2} 
  50% {opacity: 1}
  100%{opacity: 0.2}
    }
@-o-keyframes fade {
0% {opacity: 0.2} 
  50% {opacity: 1}
  100%{opacity: 0.2}

}

<div class="slideshowcontainer">
        <div class="slideshow fade">
            <img src="images/PSA.PNG">
        </div>
        <div class="slideshow fade">
            <img src="images/OWSA.PNG">
        </div>
        <div class="slideshow fade">
            <img src="images/CEAC.PNG">
        </div>

Solution

  • Just modify the .fade class to this

    .fade {
      -webkit-animation: fade 5s;
      animation: fade 5s;
      -moz-animation: fade 5s;
      -o-animation: fade 5s;
    }
    

    Because animation-name does not expect a timeinterval, it only expects the name.

    .fade {
    -webkit-animation: fade 5s;
    animation: fade 5s;
    -moz-animation: fade 5s;
    -o-animation: fade 5s;
    }
    
    @-webkit-keyframes fade {
    0% {opacity: 0.2} 
    50% {opacity: 1}
    100% {opacity:0.2}
    }
    
    @-moz-keyframes fade{
        0% {opacity: 0.2} 
      50% {opacity: 1}
      100% {opacity:0}  
    }
    
    @keyframes fade {
      0% {opacity: 0.2} 
      50% {opacity: 1}
      100%{opacity: 0.2}
        }
    @-o-keyframes fade {
    0% {opacity: 0.2} 
      50% {opacity: 1}
      100%{opacity: 0.2}
    
    }
    <div class="slideshowcontainer">
            <div class="slideshow fade">
                <img src="https://images-na.ssl-images-amazon.com/images/I/71%2BmEwFaoaL._SL1500_.jpg" width="200px" height: "200px">
            </div>
            </div>