ldrs
Version:
Minimalist loading animations for React and web components
171 lines (156 loc) • 3.97 kB
CSS
.container_49cb10 {
flex-shrink: 0;
display: inline-flex;
align-items: center;
justify-content: center;
height: var(--uib-size);
width: var(--uib-size);
}
.inner_2f1234 {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
width: 100%;
}
.slice_6278b8 {
position: relative;
height: calc(var(--uib-size) / 6);
width: 100%;
}
.slice_6278b8::before,
.slice_6278b8::after {
--uib-a: calc(var(--uib-speed) / -2);
--uib-b: calc(var(--uib-speed) / -6);
content: "";
position: absolute;
top: 0;
left: calc(50% - var(--uib-size) / 12);
height: 100%;
width: 16.6666666667%;
border-radius: 50%;
background-color: var(--uib-color);
flex-shrink: 0;
animation: orbit_f6a8c2 var(--uib-speed) linear infinite;
transition: background-color 0.3s ease;
}
.slice_6278b8:nth-child(1)::after {
animation-delay: var(--uib-a);
}
.slice_6278b8:nth-child(2)::before {
animation-delay: var(--uib-b);
}
.slice_6278b8:nth-child(2)::after {
animation-delay: calc(var(--uib-a) + var(--uib-b));
}
.slice_6278b8:nth-child(3)::before {
animation-delay: calc(var(--uib-b) * 2);
}
.slice_6278b8:nth-child(3)::after {
animation-delay: calc(var(--uib-a) + var(--uib-b) * 2);
}
.slice_6278b8:nth-child(4)::before {
animation-delay: calc(var(--uib-b) * 3);
}
.slice_6278b8:nth-child(4)::after {
animation-delay: calc(var(--uib-a) + var(--uib-b) * 3);
}
.slice_6278b8:nth-child(5)::before {
animation-delay: calc(var(--uib-b) * 4);
}
.slice_6278b8:nth-child(5)::after {
animation-delay: calc(var(--uib-a) + var(--uib-b) * 4);
}
.slice_6278b8:nth-child(6)::before {
animation-delay: calc(var(--uib-b) * 5);
}
.slice_6278b8:nth-child(6)::after {
animation-delay: calc(var(--uib-a) + var(--uib-b) * 5);
}
@keyframes orbit_f6a8c2 {
0% {
transform: translateX(calc(var(--uib-size) * 0.25)) scale(0.73684);
opacity: 0.65;
}
5% {
transform: translateX(calc(var(--uib-size) * 0.235)) scale(0.684208);
opacity: 0.58;
}
10% {
transform: translateX(calc(var(--uib-size) * 0.182)) scale(0.631576);
opacity: 0.51;
}
15% {
transform: translateX(calc(var(--uib-size) * 0.129)) scale(0.578944);
opacity: 0.44;
}
20% {
transform: translateX(calc(var(--uib-size) * 0.076)) scale(0.526312);
opacity: 0.37;
}
25% {
transform: translateX(0%) scale(0.47368);
opacity: 0.3;
}
30% {
transform: translateX(calc(var(--uib-size) * -0.076)) scale(0.526312);
opacity: 0.37;
}
35% {
transform: translateX(calc(var(--uib-size) * -0.129)) scale(0.578944);
opacity: 0.44;
}
40% {
transform: translateX(calc(var(--uib-size) * -0.182)) scale(0.631576);
opacity: 0.51;
}
45% {
transform: translateX(calc(var(--uib-size) * -0.235)) scale(0.684208);
opacity: 0.58;
}
50% {
transform: translateX(calc(var(--uib-size) * -0.25)) scale(0.73684);
opacity: 0.65;
}
55% {
transform: translateX(calc(var(--uib-size) * -0.235)) scale(0.789472);
opacity: 0.72;
}
60% {
transform: translateX(calc(var(--uib-size) * -0.182)) scale(0.842104);
opacity: 0.79;
}
65% {
transform: translateX(calc(var(--uib-size) * -0.129)) scale(0.894736);
opacity: 0.86;
}
70% {
transform: translateX(calc(var(--uib-size) * -0.076)) scale(0.947368);
opacity: 0.93;
}
75% {
transform: translateX(0%) scale(1);
opacity: 1;
}
80% {
transform: translateX(calc(var(--uib-size) * 0.076)) scale(0.947368);
opacity: 0.93;
}
85% {
transform: translateX(calc(var(--uib-size) * 0.129)) scale(0.894736);
opacity: 0.86;
}
90% {
transform: translateX(calc(var(--uib-size) * 0.182)) scale(0.842104);
opacity: 0.79;
}
95% {
transform: translateX(calc(var(--uib-size) * 0.235)) scale(0.789472);
opacity: 0.72;
}
100% {
transform: translateX(calc(var(--uib-size) * 0.25)) scale(0.73684);
opacity: 0.65;
}
}