jimu-mobile
Version:
积木组件库助力移动端开发
614 lines (550 loc) • 11.8 kB
text/less
.moveBox {
display: inline-block;
width: 50px;
height: 50px;
}
/* car-face */
.car-face .moveBox {
background-size: 100px 51px;
height: 51px;
-webkit-animation: carFaceMove .5s steps(2) infinite;
animation: carFaceMove .5s steps(2) infinite;
}
@-webkit-keyframes carFaceMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -100px 0px;
}
}
@keyframes carFaceMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -100px 0px;
}
}
/* load-logo */
.load-logo img {
width: 43px;
height: 32px;
}
/* car-side */
.car-side .moveBox {
background-size: 138px 50px;
width: 69px;
-webkit-animation: carSideMove .5s steps(2) infinite;
animation: carSideMove .5s steps(2) infinite;
}
@-webkit-keyframes carSideMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -138px 0px;
}
}
@keyframes carSideMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -138px 0px;
}
}
/* load-effect */
.load-effect {
width: 54px;
height: 54px;
position: relative;
}
.load-effect span {
display: inline-block;
width: 8px;
height: 8px;
border-radius: 50%;
background: #999;
position: absolute;
-webkit-animation: load 1.04s ease infinite;
}
@-webkit-keyframes load {
0% {
opacity: 1;
}
100% {
opacity: 0.2;
}
}
@keyframes load {
0% {
opacity: 1;
}
100% {
opacity: 0.2;
}
}
.load-effect span:nth-child(1) {
left: 0;
top: 50%;
margin-top: -4px;
-webkit-animation-delay: 0.13s;
}
.load-effect span:nth-child(2) {
left: 7px;
top: 7px;
-webkit-animation-delay: 0.26s;
}
.load-effect span:nth-child(3) {
left: 50%;
top: 0;
margin-left: -4px;
-webkit-animation-delay: 0.39s;
}
.load-effect span:nth-child(4) {
top: 7px;
right: 7px;
-webkit-animation-delay: 0.52s;
}
.load-effect span:nth-child(5) {
right: 0;
top: 50%;
margin-top: -4px;
-webkit-animation-delay: 0.65s;
}
.load-effect span:nth-child(6) {
right: 7px;
bottom: 7px;
-webkit-animation-delay: 0.78s;
}
.load-effect span:nth-child(7) {
bottom: 0;
left: 50%;
margin-left: -4px;
-webkit-animation-delay: 0.91s;
}
.load-effect span:nth-child(8) {
bottom: 7px;
left: 7px;
-webkit-animation-delay: 1.04s;
}
/* car-run */
.car-run {
height: 40px;
overflow: hidden;
display: inline-block;
width: 150px;
}
.size-small .car-run img {
margin: -55px 0 0 0;
width: 150px;
height: 150px
}
/* big style*/
.size-big .load-logo img {
width: 86px;
height: 64px;
}
.size-big .car-face .moveBox {
background-size: 200px 102px;
height: 102px;
width: 100px;
-webkit-animation: bigcarFaceMove .5s steps(2) infinite;
animation: bigcarFaceMove .5s steps(2) infinite;
}
@-webkit-keyframes bigcarFaceMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -200px 0px;
}
}
@keyframes bigcarFaceMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -200px 0px;
}
}
.size-big .car-side .moveBox {
background-size: 276px 100px;
width: 138px;
height: 100px;
-webkit-animation: bigCarSideMove .5s steps(2) infinite;
animation: bigCarSideMove .5s steps(2) infinite;
}
@-webkit-keyframes bigCarSideMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -276px 0px;
}
}
@keyframes bigCarSideMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -276px 0px;
}
}
.size-big .car-run-new .moveBox {
background-size: 276px 100px;
width: 138px;
height: 100px;
-webkit-animation: bigCarSideMove .5s steps(2) infinite;
animation: bigCarSideMove .5s steps(2) infinite;
}
@-webkit-keyframes bigCarSideMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -276px 0px;
}
}
@keyframes bigCarSideMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -276px 0px;
}
}
.size-small .car-run-new .moveBox {
background-size: 138px 50px;
width: 69px;
height: 50px;
-webkit-animation: smCarSideMove .5s steps(2) infinite;
animation: smCarSideMove .5s steps(2) infinite;
}
@-webkit-keyframes smCarSideMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -138px 0px;
}
}
@keyframes smCarSideMove {
0% {
background-position: 0px 0px;
}
100% {
background-position: -138px 0px;
}
}
.size-big .car-run {
height: 45px;
overflow: hidden;
display: inline-block;
width: 160px;
}
.size-big .car-run img {
margin: -55px 0 0 0;
}
/* load-effect */
.size-big .load-effect {
width: 108px;
height: 108px;
position: relative;
}
.size-big .load-effect span {
display: inline-block;
width: 16px;
height: 16px;
border-radius: 50%;
background: #999;
position: absolute;
-webkit-animation: load 1.04s ease infinite;
animation: load 1.04s ease infinite;
}
.size-big .load-effect span:nth-child(1) {
left: 0;
top: 50%;
margin-top: -8px;
-webkit-animation-delay: 0.13s;
animation-delay: 0.13s;
}
.size-big .load-effect span:nth-child(2) {
left: 14px;
top: 14px;
-webkit-animation-delay: 0.26s;
animation-delay: 0.26s;
}
.size-big .load-effect span:nth-child(3) {
left: 50%;
top: 0;
margin-left: -8px;
-webkit-animation-delay: 0.39s;
animation-delay: 0.39s;
}
.size-big .load-effect span:nth-child(4) {
top: 14px;
right: 14px;
-webkit-animation-delay: 0.52s;
animation-delay: 0.52s;
}
.size-big .load-effect span:nth-child(5) {
right: 0;
top: 50%;
margin-top: -8px;
-webkit-animation-delay: 0.65s;
animation-delay: 0.65s;
}
.size-big .load-effect span:nth-child(6) {
right: 14px;
bottom: 14px;
-webkit-animation-delay: 0.78s;
animation-delay: 0.78s;
}
.size-big .load-effect span:nth-child(7) {
bottom: 0;
left: 50%;
margin-left: -8px;
-webkit-animation-delay: 0.91s;
animation-delay: 0.91s;
}
.size-big .load-effect span:nth-child(8) {
bottom: 14px;
left: 14px;
-webkit-animation-delay: 1.04s;
animation-delay: 1.04s;
}
/* mask-layout */
.mask-layout {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 101;
}
.mask-layout .load-layer {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
z-index: 10;
box-sizing: border-box;
}
.mask-layout .mask-layer {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 9;
}
@-webkit-keyframes loading {
from {
opacity: 1;
}
to {
opacity: 0.3;
}
}
@keyframes loading {
from {
opacity: 1;
}
to {
opacity: 0.3;
}
}
.jimu-load-loading {
position: absolute;
top: 50%;
left: 50%;
opacity: 0.8;
color: @color-text-disabled;
z-index: 10;
background: #000;
border-radius: 2px;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
padding: 20px 15px 20px 50px;
min-width: 120px;
max-width: 200px;
.load-text {
font-size: @font-size-base;
}
.load-spinner {
position: absolute;
top: 50%;
left: 25px;
transform: translate(0, -3px);
-webkit-transform: translate(0, -3px);
display: inline-block;
div {
width: 2px;
height: 6px;
background: #ccc;
position: absolute;
left: 100%;
top: 100%;
/*opacity: 0;*/
-webkit-animation: loading 2s linear infinite;
animation: loading 2s linear infinite;
-webkit-border-radius: 30px;
border-radius: 30px;
}
div:nth-child(1) {
transform: rotate(0deg) translate(0, -8px);
-webkit-transform: rotate(0deg) translate(0, -8px);
-webkit-animation-delay: -0s;
animation-delay: -0s;
}
div:nth-child(2) {
transform: rotate(30deg) translate(0, -8px);
-webkit-transform: rotate(30deg) translate(0, -8px);
-webkit-animation-delay: -1.8334s;
animation-delay: -1.8334s;
}
div:nth-child(3) {
transform: rotate(60deg) translate(0, -8px);
-webkit-transform: rotate(60deg) translate(0, -8px);
-webkit-animation-delay: -1.6668s;
animation-delay: -1.6668s;
}
div:nth-child(4) {
transform: rotate(90deg) translate(0, -8px);
-webkit-transform: rotate(90deg) translate(0, -8px);
-webkit-animation-delay: -1.5002s;
animation-delay: -1.5002s;
}
div:nth-child(5) {
transform: rotate(120deg) translate(0, -8px);
-webkit-transform: rotate(120deg) translate(0, -8px);
-webkit-animation-delay: -1.3336s;
animation-delay: -1.3336s;
}
div:nth-child(6) {
transform: rotate(150deg) translate(0, -8px);
-webkit-transform: rotate(150deg) translate(0, -8px);
-webkit-animation-delay: -1.167s;
animation-delay: -1.167s;
}
div:nth-child(7) {
transform: rotate(180deg) translate(0, -8px);
-webkit-transform: rotate(180deg) translate(0, -8px);
-webkit-animation-delay: -1.0004s;
animation-delay: -1.0004s;
}
div:nth-child(8) {
transform: rotate(210deg) translate(0, -8px);
-webkit-transform: rotate(210deg) translate(0, -8px);
-webkit-animation-delay: -0.8338s;
animation-delay: -0.8338s;
}
div:nth-child(9) {
transform: rotate(240deg) translate(0, -8px);
-webkit-transform: rotate(240deg) translate(0, -8px);
-webkit-animation-delay: -0.6672s;
animation-delay: -0.6672s;
}
div:nth-child(10) {
transform: rotate(270deg) translate(0, -8px);
-webkit-transform: rotate(270deg) translate(0, -8px);
-webkit-animation-delay: -0.5006s;
animation-delay: -0.5006s;
}
div:nth-child(11) {
transform: rotate(300deg) translate(0, -8px);
-webkit-transform: rotate(300deg) translate(0, -8px);
-webkit-animation-delay: -0.334s;
animation-delay: -0.334s;
}
div:nth-child(12) {
transform: rotate(330deg) translate(0, -8px);
-webkit-transform: rotate(330deg) translate(0, -8px);
-webkit-animation-delay: -0.1674s;
animation-delay: -0.1674s;
}
}
}
.dis-mask-layout {
.jimu-load-loading {
position: relative;
background: none;
display: inline;
color: @color-text-highlight;
padding: 10px 15px 10px 50px;
left: auto;
top: auto;
.load-spinner div {
background: @fill-highlight
}
.load-text {
display: inline;
}
}
}
.jimu-load-ball {
display: inline-block;
text-align: center;
height: 20px;
line-height: 20px;
.load-balls {
display: inline-block;
span {
display: inline-block;
vertical-align: middle;
width: 12px;
height: 20px;
}
span:after {
content: "";
display: inline-block;
vertical-align: middle;
border-radius: 100%;
background: @fill-href-active;
width: 9px;
height: 9px;
-webkit-animation: ballScale 1s ease infinite;
animation: ballScale 1s ease infinite;
}
span:nth-child(1):after {
content: "";
-webkit-animation-delay: 0s;
animation-delay: 0s;
}
span:nth-child(2):after {
content: "";
-webkit-animation-delay: 0.2s;
animation-delay: 0.2s;
}
span:nth-child(3):after {
content: "";
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}
}
}
@-webkit-keyframes ballScale {
10% {
-webkit-transform: scale(1);
background: #cbcbcb
}
20%,
100% {
-webkit-transform: scale(.5);
background: @fill-href-active
}
}
@keyframes ballScale {
10% {
transform: scale(1);
background: #cbcbcb
}
20%,
100% {
transform: scale(.5);
background: @fill-href-active
}
}