ant-design/style/components/spin.less

101 lines
1.8 KiB
Plaintext

@spin-prefix-cls: ant-spin;
@spin-dot-default : #999;
@spin-dot-size : 8px;
@spin-dot-size-sm : @spin-dot-size / 2;
@spin-dot-size-lg : @spin-dot-size * 2;
// root of component
// ------------------------------
.@{spin-prefix-cls} {
color: @primary-color;
display: inline-block;
font-size: @spin-dot-size;
text-align: center;
opacity: 0;
position: absolute;
visibility: hidden;
transition: opacity 0.3s @ease-in-out-circ;
&-spining {
opacity: 1;
position: static;
visibility: visible;
}
&-nested-loading {
position: relative;
}
&-nested-loading & {
position: absolute;
top: 50%;
left: 50%;
margin-top: -0.75em;
margin-left: -2.5em;
z-index: 4;
}
&-container {
transition: all 0.3s @ease-in-out-circ;
}
&-nested-loading > &-container {
opacity: 0.7;
filter: blur(1px);
filter: ~"progid\:DXImageTransform\.Microsoft\.Blur(PixelRadius\=1, MakeShadow\=false)"; /* IE6~IE9 */
pointer-events: none;
}
// dots
// ------------------------------
&-dot {
.animation(antSpinPulse 1.2s infinite @ease-in-out-circ);
.square(1em);
border-radius: 50%;
display: inline-block;
background-color: @primary-color;
}
&-dot-second {
.animation-delay(200ms);
margin-left: 1em;
}
&-dot-third {
.animation-delay(400ms);
margin-left: 1em;
}
// Sizes
// ------------------------------
// small
&-sm {
font-size: @spin-dot-size-sm;
}
// large
&-lg {
font-size: @spin-dot-size-lg;
}
}
// pulse
@keyframes antSpinPulse {
0%,
80%,
100% {
opacity: 0;
}
40% {
opacity: 1;
}
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
/* IE10+*/
.ant-spin-nested-loading > .ant-spin-container {
background: #fff;
opacity: 0.5;
}
}