CSS Only Crossfading Background Slideshow


Author: craigraphics
Views Total: 53,633 views
Official Page: Go to website
Last Update: February 5, 2016
License: MIT

Preview:

CSS Only Crossfading Background Slideshow

Description:

A fullscreen background slideshow with a crossfade transition effect built only with HTML and CSS/CSS3.

How to use it:

Build  the html structure for the background slideshow.

<div class="crossfade">
  <figure></figure>
  <figure></figure>
  <figure></figure>
  <figure></figure>
  <figure></figure>
</div>

The core CSS styles.

.crossfade > figure {
  animation: imageAnimation 30s linear infinite 0s;
  backface-visibility: hidden;
  background-size: cover;
  background-position: center center;
  color: transparent;
  height: 100%;
  left: 0px;
  opacity: 0;
  position: absolute;
  top: 0px;
  width: 100%;
  z-index: 0;
}

Add background images to the slideshow.

.crossfade > figure:nth-child(1) { background-image: url('1.jpg'); }
.crossfade > figure:nth-child(2) {
  animation-delay: 6s;
  background-image: url('2.jpg');
}
.crossfade > figure:nth-child(3) {
  animation-delay: 12s;
  background-image: url('3.jpg');
}
.crossfade > figure:nth-child(4) {
  animation-delay: 18s;
  background-image: url('4.jpg');
}
.crossfade > figure:nth-child(5) {
  animation-delay: 24s;
  background-image: url('5.jpg');
}

Create the crossfade effect using CSS3 animations.

@keyframes 
imageAnimation {  0% {
 animation-timing-function: ease-in;
 opacity: 0;
}
 8% {
 animation-timing-function: ease-out;
 opacity: 1;
}
 17% {
 opacity: 1
}
 25% {
 opacity: 0
}
 100% {
 opacity: 0
}
}

 

See also  CSS Only Text Carousel / Rotator

Leave a Reply

Your email address will not be published. Required fields are marked *