ui/app/styles/layout/_loading.scss

119 lines
1.8 KiB
SCSS

.loading-overlay {
position : absolute;
top : 50vh;
left : 0;
right : 0;
z-index: 13;
}
.i-hate-spinners {
.lid:before,
.lid:after,
.lid,
.square,
.square:before,
.square:after,
.icon-spin {
animation: none;
-webkit-animation:: none;
}
}
.underlay {
z-index: 10;
background-color: rgba($light-grey, 0.5);
position: fixed;
top: 0;
left: 0;
bottom: 0;
right: 0;
}
.square {
background: $secondary;
height: 25px;
width: 25px;
margin: 0 auto;
position: relative;
animation: "";
&:before, &:after {
content: "";
height: 25px;
width: 25px;
background: $info;
display: block;
position: absolute;
animation: ball ease 2s;
animation-iteration-count: infinite;
transform-origin: 50% 50%;
z-index: -1;
border-radius: 90px;
}
&:after {
animation-delay: .25s;
}
}
.lid {
&:before, &:after {
content: "";
height: 3px;
width: 12.5px;
background: $secondary;
position: absolute;
animation: lid ease-in-out 2s;
animation-iteration-count: infinite;
transform-origin: 0% 50%;
left: 2px
}
&:after {
right: 0;
animation: lidLeft ease-in-out 2s;
animation-iteration-count: infinite;
transform-origin: 100% 50%;
left:10.5px;
}
}
@keyframes ball {
0% {
transform: scaleX(0.25) scaleY(0.25);
top: -40px;
opacity: 0;
}
50% {
opacity: .75;
}
100% {
transform: scaleX(0.75) scaleY(0.75);
top: 0;
opacity: 1;
}
}
@keyframes lid {
0% {
transform: rotate(0);
}
50% {
transform: rotate(-90deg);
}
100% {
transform: rotate(0);
}
}
@keyframes lidLeft {
0% {
transform: rotate(0);
}
50% {
transform: rotate(90deg);
}
100% {
transform: rotate(0);
}
}