<div class="panels">
  <div class="panel">
    <div class="panel-body">
      <div class="bar-container">
        <span class="bar"></span>
        <span class="bar"></span>
        <span class="bar"></span>
      </div>
      <div class="navigation">
				<a href="#" data-target="right" class="nav-right"><i class="fa fa-arrow-right"></i></a>
			</div>
    </div>
  </div>
  <div class="panel">
    <div class="panel-body">
      <div class="ball-container">
        <span class="ball"></span>
        <span class="ball"></span>
        <span class="ball"></span>
      </div>
      <div class="navigation">
				<a href="#" data-target="left" class="nav-left"><i class="fa fa-arrow-left"></i></a>
				<a href="#" data-target="right" class="nav-right"><i class="fa fa-arrow-right"></i></a>
			</div>
    </div>
  </div>
  <div class="panel">
    <div class="panel-body">
      <div class="spinner4"></div>
      <div class="navigation">
				<a href="#" data-target="left" class="nav-left"><i class="fa fa-arrow-left"></i></a>
				<a href="#" data-target="right" class="nav-right"><i class="fa fa-arrow-right"></i></a>
			</div>
    </div>
  </div>
  <div class="panel">
    <div class="panel-body">
      <div class="spinner3"></div>
      <div class="navigation">
				<a href="#" data-target="left" class="nav-left"><i class="fa fa-arrow-left"></i></a>
				<a href="#" data-target="right" class="nav-right"><i class="fa fa-arrow-right"></i></a>
			</div>
    </div>
  </div>
  <div class="panel">
    <div class="panel-body">
      <div class="spinner2"></div>
      <div class="navigation">
				<a href="#" data-target="left" class="nav-left"><i class="fa fa-arrow-left"></i></a>
				<a href="#" data-target="right" class="nav-right"><i class="fa fa-arrow-right"></i></a>
			</div>
    </div>
  </div>
  <div class="panel">
    <div class="panel-body">
      <div class="spinner1"></div>
      <div class="navigation">
				<a href="#" data-target="left" class="nav-left"><i class="fa fa-arrow-left"></i></a>
			</div>
    </div>
  </div>
</div>
body  {
  position: relative;
  margin: 0;
  height: 100vh;
}

/* Panel Navigation */

.panel {
  background-image: linear-gradient(120deg, #f6d365 0%, #fda085 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  transform: translateX(100vw);
  transition: transform .7s ease-in-out;
}

.panel-body {
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

.panel:first-of-type {
  transform: translateX(0);
}

.navigation a {
  color: #fff;
  font-size: 30px;
  position:fixed;
  top: 50%;
  transform: translateY(-50%);
}

.navigation a.nav-left {
  left: 20px;
  right: auto;
}

.navigation a.nav-right {
    left: auto;
    right: 20px;
}

/* Spinner 1 */

.spinner1 {
  width: 50px;
  height: 50px;
  border-width: 3px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  border-radius: 50%;
  animation: spinner1 1s linear infinite;
}

@keyframes spinner1 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Spinner2 */

.spinner2 {
  width: 50px;
  height: 50px;
  border-width: 3px;
  border-style: solid;
  border-color: #fff transparent;
  border-radius: 50%;
  animation: spinner2 1s linear infinite;
}

@keyframes spinner2 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.spinner3 {
  width: 50px;
  height: 50px;
  border-width: 3px;
  border-style: solid;
  border-color: #fff transparent;
  border-radius: 50%;
  animation: spinner3 1s linear infinite;
}

@keyframes spinner3 {
  0% {
    transform: rotate(0deg) scale(1);
  }
  50% {
    transform: rotate(180deg) scale(0);
  }
  100% {
    transform: rotate(360deg) scale(1);
  }
}

.spinner4 {
    width: 50px;
    height: 50px;
    border: 3px solid #fff;
    border-color: #fff transparent #fff transparent;
    border-radius: 50%;
    animation: spinner4 1s linear infinite;
}

@keyframes spinner4 {
    0% {
        transform: rotate(0deg);
    }
    20% {
        transform: rotate(150deg);
    }
    80% {
        transform: rotate(210deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* Ball Loading Animation */

.ball-container {
  width: 60px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.ball-container .ball {
  width: 15px;
  height: 15px;
  background-color: #fff;
  display: block;
  border-radius: 50%;
  animation: jump 1s ease-in-out infinite;
}

@keyframes jump {
  0%,
  100%{
    transform: translateY(0);
  }
  
  50% {
    transform: translateY(-20px);
  }
}

.ball-container .ball:nth-child(2) {
  animation-delay: 0.15s;
}

.ball-container .ball:nth-child(3) {
  animation-delay: 0.3s;
}

/* Bar container Animation */

.bar-container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 40px;
}

.bar-container .bar {
  width: 8px;
  height: 40px;
  background-color: #fff;
  animation: barscale 1s ease-in-out infinite;
}

@keyframes barscale {
  0%,
  100% {
    transform: scale(1);
  }
  
  50% {
    transform: scale(0.7);
  }
}

.bar-container .bar:nth-child(2) {
  animation-delay: 0.25s;
}

.bar-container .bar:nth-child(3) {
  animation-delay: 0.5s;
}



// Panel Navigation

const panelNavigation = document.querySelectorAll(".navigation");

panelNavigation.forEach((navigation, index) => {
  for(let i=0; i<navigation.children.length; i++) {
    navigation.children[i].addEventListener("click", function() {
      let parentPanel = this.parentNode.parentNode.parentNode;
      if(this.dataset.target === 'left') {
                parentPanel.previousElementSibling.style.transform = 'translateX(0)';
                parentPanel.style.transform = 'translateX(100vw)';
            } else if(this.dataset.target === 'right') {
                parentPanel.nextElementSibling.style.transform = 'translateX(0)';
                parentPanel.style.transform = 'translateX(-100vw)';
            }
    })
  }
})
Run Pen

External CSS

  1. https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css

External JavaScript

  1. https://codepen.io/navin_moorthy/pen/aboQoVX.js