react-spinkit
Version:
A collection of loading indicators animated with CSS for React
64 lines (56 loc) • 2.41 kB
CSS
.fading-circle {
width: 22px;
height: 22px;
position: relative;
}
.fading-circle .circle {
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
}
.fading-circle .circle:before {
content: '';
display: block;
margin: 0 auto;
width: 18%;
height: 18%;
background-color: #333;
border-radius: 100%;
-webkit-animation: fadedelay 1.2s infinite ease-in-out;
animation: fadedelay 1.2s infinite ease-in-out;
/* Prevent first frame from flickering when animation starts */
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
.circle2 { transform: rotate(30deg); -webkit-transform: rotate(30deg) }
.circle3 { transform: rotate(60deg); -webkit-transform: rotate(60deg) }
.circle4 { transform: rotate(90deg); -webkit-transform: rotate(90deg) }
.circle5 { transform: rotate(120deg); -webkit-transform: rotate(120deg) }
.circle6 { transform: rotate(150deg); -webkit-transform: rotate(150deg) }
.circle7 { transform: rotate(180deg); -webkit-transform: rotate(180deg) }
.circle8 { transform: rotate(210deg); -webkit-transform: rotate(210deg) }
.circle9 { transform: rotate(240deg); -webkit-transform: rotate(240deg) }
.circle10 { transform: rotate(270deg); -webkit-transform: rotate(270deg) }
.circle11 { transform: rotate(300deg); -webkit-transform: rotate(300deg) }
.circle12 { transform: rotate(330deg); -webkit-transform: rotate(330deg) }
.circle2:before { animation-delay: -1.1s; -webkit-animation-delay: -1.1s }
.circle3:before { animation-delay: -1.0s; -webkit-animation-delay: -1.0s }
.circle4:before { animation-delay: -0.9s; -webkit-animation-delay: -0.9s }
.circle5:before { animation-delay: -0.8s; -webkit-animation-delay: -0.8s }
.circle6:before { animation-delay: -0.7s; -webkit-animation-delay: -0.7s }
.circle7:before { animation-delay: -0.6s; -webkit-animation-delay: -0.6s }
.circle8:before { animation-delay: -0.5s; -webkit-animation-delay: -0.5s }
.circle9:before { animation-delay: -0.4s; -webkit-animation-delay: -0.4s }
.circle10:before { animation-delay: -0.3s; -webkit-animation-delay: -0.3s }
.circle11:before { animation-delay: -0.2s; -webkit-animation-delay: -0.2s }
.circle12:before { animation-delay: -0.1s; -webkit-animation-delay: -0.1s }
@keyframes fadedelay {
0%, 39%, 100% { opacity: 0 }
40% { opacity: 0 }
}
@-webkit-keyframes fadedelay {
0%, 39%, 100% { opacity: 0 }
40% { opacity: 1 }
}