New loading animation idea

Posted on October 24th, 2019

This is a new loading animation idea created by Darkcode. It is also simple but awesome. To see how it works, just click on the button Run Pen:

How to create a new loading animation idea

Step 1: Add Html

<div class="loading">
  <span>Loading...</span>
</div>

Step 2: Add CSS

body {
  margin: 0;
  padding: 0;
  background: #34495e;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'montserrat', sans-serif;
}

.loading {
  width: 200px;
  height: 200px;
  box-sizing: border-box;
  border-radius: 50%;
  border-top: 10px solid #e74c3c;
  position: relative;
  animation: a1 2s linear infinite;
}

.loading::before,
.loading::after {
  content: '';
  width: 200px;
  height: 200px;
  position: absolute;
  left: 0;
  top: -10px;
  box-sizing: border-box;
  border-radius: 50%;
}

.loading::before {
  border-top: 10px solid #e67e22;
  transform: rotate(120deg);
}

.loading::after {
  border-top: 10px solid #3498db;
  transform: rotate(240deg);
}

.loading span {
  position: absolute;
  width: 200px;
  height: 200px;
  color: #fff;
  text-align: center;
  line-height: 200px;
  animation: a2 2s linear infinite;
}

@keyframes a1 {
  to {
    transform: rotate(360deg);
  }
}

@keyframes a2 {
  to {
    transform: rotate(-360deg);
  }
}