<body>
<div class="grid">
<div class="loader" >
<!-- <h1>Loader 1</h1> -->
<div id="ld1">
<div>
</div>
<div>
</div>
<div>
</div>
</div>
</div>
<div class="loader">
<div id="ld2">
<div>
</div>
<div>
</div>
<div>
</div>
<div>
</div>
<div>
</div>
<div>
</div>
<div>
</div>
</div>
</div>
<div class="loader">
<div id="ld3">
<div>
</div>
<div>
</div>
<div>
</div>
<div>
</div>
</div>
</div>
<div class="loader" >
<div id="ld4">
<div>
</div>
<div>
</div>
<div>
</div>
<div>
</div>
</div>
</div>
</div>
</body>
* {
padding: 0;
margin: 0;
box-sizing: border-box; }
body {
min-height: 100vh;
min-width: 100vw;
font-family: "Architects Daughter", cursive; }
.grid {
display: flex;
height: 100%;
width: 100%;
flex-wrap: wrap; }
.loader {
width: 50vw;
height: 50vh;
border: 1px solid mistyrose;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center; }
#ld1 {
position: relative;
transform: rotate(45deg); }
#ld1 div {
height: 20px;
width: 20px;
background: #FE4A49;
border-radius: 50%;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0; }
#ld1 div:nth-child(1) {
animation: ld1_div1 1s ease-in-out infinite; }
#ld1 div:nth-child(2) {
animation: ld1_div2 1s ease-in-out infinite; }
#ld1 div:nth-child(3) {
animation: ld1_div3 1s ease-in-out infinite; }
@keyframes ld1_div1 {
0% {
top: 52.5px;
background: #FE4A49; }
50% {
top: -52.5px;
background: #59CD90; }
100% {
top: 52.5px;
background: #009FB7; } }
@keyframes ld1_div2 {
0% {
right: 52.5px;
background: #FE4A49; }
50% {
right: -52.5px;
background: #FED766; }
100% {
right: 52.5px;
background: #59CD90; } }
@keyframes ld1_div3 {
0% {
left: 52.5px;
background: #FE4A49; }
50% {
left: -52.5px;
background: #D91E36; }
100% {
left: 52.5px;
background: #FE4A49; } }
#ld2 {
display: flex;
flex-direction: row; }
#ld2 div {
height: 20px;
width: 5px;
background: #FE4A49;
margin: 3px;
border-radius: 25px; }
#ld2 div:nth-child(1) {
animation: ld2 1s ease-in-out infinite 0s; }
#ld2 div:nth-child(2) {
animation: ld2 1s ease-in-out infinite 0.1s; }
#ld2 div:nth-child(3) {
animation: ld2 1s ease-in-out infinite 0.2s; }
#ld2 div:nth-child(4) {
animation: ld2 1s ease-in-out infinite 0.3s; }
#ld2 div:nth-child(5) {
animation: ld2 1s ease-in-out infinite 0.4s; }
#ld2 div:nth-child(6) {
animation: ld2 1s ease-in-out infinite 0.5s; }
#ld2 div:nth-child(7) {
animation: ld2 1s ease-in-out infinite 0.6s; }
@keyframes ld2 {
0% {
transform: scaleY(1);
background: #FED766; }
25% {
background: #009FB7; }
50% {
transform: scaleY(2);
background: #59CD90; }
75% {
background: #FE4A49; }
100% {
transform: scaleY(1);
background: #D91E36; } }
#ld3 {
position: relative;
animation: outercontainer 4s linear infinite; }
#ld3 div {
height: 12px;
width: 12px;
border-radius: 50%;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0; }
#ld3 div:nth-child(1) {
top: 20px;
background: #59CD90;
animation: ld3_div1 2s linear infinite; }
#ld3 div:nth-child(2) {
top: -20px;
background: #D91E36;
animation: ld3_div2 2s linear infinite; }
#ld3 div:nth-child(3) {
left: 20px;
background: #F39237;
animation: ld3_div4 2s linear infinite; }
#ld3 div:nth-child(4) {
left: -20px;
background: #0072BB;
animation: ld3_div3 2s linear infinite; }
@keyframes outercontainer {
100% {
transform: rotate(360deg); } }
@keyframes ld3_div1 {
0% {
top: 20px; }
25% {
top: 0; }
50% {
top: 20px; }
75% {
top: 0; }
100% {
top: 20px; } }
@keyframes ld3_div2 {
0% {
top: -20px; }
25% {
top: 0; }
50% {
top: -20px; }
75% {
top: 0; }
100% {
top: -20px; } }
@keyframes ld3_div3 {
0% {
left: -20px; }
25% {
left: 0; }
50% {
left: -20px; }
75% {
left: 0; }
100% {
left: -20px; } }
@keyframes ld3_div4 {
0% {
left: 20px; }
25% {
left: 0; }
50% {
left: 20px; }
75% {
left: 0; }
100% {
left: 20px; } }
#ld4 {
position: relative;
display: flex;
width: 25%;
justify-content: space-between; }
#ld4 div {
height: 15px;
width: 15px;
border-radius: 50%;
background: #D91E36; }
#ld4 div:nth-child(1) {
animation: ld4 3s linear infinite 0s; }
#ld4 div:nth-child(2) {
animation: ld4 3s linear infinite 0.15s; }
#ld4 div:nth-child(3) {
animation: ld4 3s linear infinite 0.3s; }
#ld4 div:nth-child(4) {
animation: ld4 3s linear infinite 0.45s; }
@keyframes ld4 {
0% {
opacity: 0;
transform: scale(0.3);
background: #59CD90; }
25% {
opacity: 1;
transform: scale(1.8);
background: #0072BB; }
50% {
opacity: 0;
transform: scale(0.3);
background: #FE4A49; }
75% {
opacity: 1;
transform: scale(1.8);
background: #FED766; }
100% {
opacity: 0;
}
/*# sourceMappingURL=app.css.map */
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.