tech4biz/blog/assets/css/loader.css
2024-10-25 17:11:31 +05:30

295 lines
6.0 KiB
CSS

.preloader {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 99999;
background: var(--Dark-blue);
}
.spinner {
width: 40px;
height: 40px;
border-radius: 5px;
background-color: var(--color-white);
margin: 100px auto;
-webkit-animation: rotate-in 1.2s infinite ease-in-out;
animation: rotate-in 1.2s infinite ease-in-out;
}
.loader-wrapper {
width: 100%;
height: 100vh;
position: fixed;
overflow: hidden;
top: 0;
left: 0;
display: flex;
justify-content: center;
align-items: center;
z-index: 999999;
}
.bg-grd-blue-radial,
.loader-wrapper {
background: radial-gradient(circle, #0033a0 0, #000063 50%, #000e2b 85%);
}
.loader {
width: 20em;
height: 20em;
font-size: 10px;
position: relative;
display: flex;
align-items: center;
justify-content: center;
}
.loader .face {
position: absolute;
border-radius: 50%;
border-style: solid;
animation: animate 3s linear infinite;
}
.loader .face:nth-child(1) {
width: 100%;
height: 100%;
color: #6dccff;
border-color: currentColor transparent transparent currentColor;
border-width: 0.2em 0.2em 0 0;
--deg: -45deg;
animation-direction: normal;
}
.loader .face:nth-child(2) {
width: 70%;
height: 70%;
color: var(--color-white);
border-color: currentColor currentColor transparent transparent;
border-width: 0.2em 0 0 0.2em;
--deg: -135deg;
animation-direction: reverse;
}
.loader .face .circle {
position: absolute;
width: 50%;
height: 0.1em;
top: 50%;
left: 50%;
background-color: transparent;
transform: rotate(var(--deg));
transform-origin: left;
border: none;
}
.loader .face:nth-child(1) .circle {
transform: matrix(.70711, -.70711, .70711, .70711, 0, 0);
}
.loader .face:nth-child(2) .circle {
transform: matrix(-.70711, -.70711, .70711, -.70711, 0, 0);
}
.loader .face .circle::before {
position: absolute;
top: -0.5em;
right: -0.5em;
content: '';
width: 1em;
height: 1em;
background-color: currentColor;
border-radius: 50%;
box-shadow: 0 0 2em, 0 0 4em, 0 0 6em, 0 0 8em, 0 0 10em, 0 0 0 0.5em rgb(109 204 255 / 10%);
}
@keyframes animate {
100% {
transform: rotate(1turn);
}
}
.form-error-message {
animation-duration: 1s !important;
animation-fill-mode: both !important;
animation-name: shake !important;
color: #e63c3c !important;
line-height: 25px;
white-space: nowrap;
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out,
box-shadow 0.15s ease-in-out;
}
@-webkit-keyframes rotate-in {
0% {
-webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
transform: perspective(120px) rotateX(0deg) rotateY(0deg);
}
50% {
-webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
}
100% {
-webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
}
}
@keyframes rotate-in {
0% {
-webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
transform: perspective(120px) rotateX(0deg) rotateY(0deg);
}
50% {
-webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
}
100% {
-webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
}
}
@-webkit-keyframes moveBounce {
0% {
-webkit-transform: translateY(0px);
transform: translateY(0px);
}
50% {
-webkit-transform: translateY(50px);
transform: translateY(50px);
}
100% {
-webkit-transform: translateY(0px);
transform: translateY(0px);
}
}
@keyframes moveBounce {
0% {
-webkit-transform: translateY(0px);
transform: translateY(0px);
}
50% {
-webkit-transform: translateY(50px);
transform: translateY(50px);
}
100% {
-webkit-transform: translateY(0px);
transform: translateY(0px);
}
}
@-webkit-keyframes ripple {
0% {
-webkit-transform: scale(1);
transform: scale(1);
}
75% {
-webkit-transform: scale(1.3);
transform: scale(1.3);
opacity: 1;
}
100% {
-webkit-transform: scale(1.5);
transform: scale(1.5);
opacity: 0;
}
}
@keyframes ripple {
0% {
-webkit-transform: scale(1);
transform: scale(1);
}
75% {
-webkit-transform: scale(1.3);
transform: scale(1.3);
opacity: 1;
}
100% {
-webkit-transform: scale(1.5);
transform: scale(1.5);
opacity: 0;
}
}
@-webkit-keyframes border-transform {
0%,
100% {
border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
}
14% {
border-radius: 50% 20% 50% 30%/49% 60% 40% 51%;
}
28% {
border-radius: 54% 46% 38% 62%/49% 70% 30% 51%;
}
42% {
border-radius: 61% 39% 55% 45%/61% 38% 62% 39%;
}
56% {
border-radius: 61% 39% 67% 33%/70% 50% 50% 30%;
}
70% {
border-radius: 50% 50% 34% 66%/56% 68% 32% 44%;
}
84% {
border-radius: 46% 54% 50% 50%/35% 61% 39% 65%;
}
}
@keyframes border-transform {
0%,
100% {
border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
}
14% {
border-radius: 50% 20% 50% 30%/49% 60% 40% 51%;
}
28% {
border-radius: 54% 46% 38% 62%/49% 70% 30% 51%;
}
42% {
border-radius: 61% 39% 55% 45%/61% 38% 62% 39%;
}
56% {
border-radius: 61% 39% 67% 33%/70% 50% 50% 30%;
}
70% {
border-radius: 50% 50% 34% 66%/56% 68% 32% 44%;
}
84% {
border-radius: 46% 54% 50% 50%/35% 61% 39% 65%;
}
}