@import "../styles/_base.less"; .spinner{ &-flash{ &-default{ width: 60rpx; height: 60rpx; } &-mini{ width: 40rpx; height: 40rpx; } &-large{ width: 80rpx; height: 80rpx; } } &-flip{ &-default{ width: 60rpx; height: 60rpx; } &-mini{ width: 40rpx; height: 40rpx; } &-large{ width: 80rpx; height: 80rpx; } } &-change{ &-default{ width: 50rpx; height: 50rpx; } &-mini{ width: 30rpx; height: 30rpx; } &-large{ width: 70rpx; height: 70rpx; } } } /*flash */ .flash-spinner { position: relative; } .flash-bounce1, .flash-bounce2 { width: 100%; height: 100%; border-radius: 50%; background-color: @default-color; opacity: 0.6; position: absolute; top: 0; left: 0; -webkit-animation: bounce 2.0s infinite ease-in-out; animation: bounce 2.0s infinite ease-in-out; } .flash-bounce2 { -webkit-animation-delay: -1.0s; animation-delay: -1.0s; } @-webkit-keyframes bounce { 0%, 100% { -webkit-transform: scale(0.0); } 50% { -webkit-transform: scale(1.0); } } @keyframes bounce { 0%, 100% { transform: scale(0.0); -webkit-transform: scale(0.0); } 50% { transform: scale(1.0); -webkit-transform: scale(1.0); } } /*flip */ .flip-bounce1 { background-color: @default-color; -webkit-animation: rotateplane 1.2s infinite ease-in-out; animation: rotateplane 1.2s infinite ease-in-out; } @-webkit-keyframes rotateplane { 0% { -webkit-transform: perspective(120px); } 50% { -webkit-transform: perspective(120px) rotateY(180deg); } 100% { -webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg); } } @keyframes rotateplane { 0% { transform: perspective(120px) rotateX(0deg) rotateY(0deg); -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg); } 50% { transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg); -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg); } 100% { transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg); -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg); } } /* change */ .change-spinner { width: 240rpx; text-align: center; } .change-bounce1 { background-color: @default-color; border-radius: 100%; display: inline-block; -webkit-animation: bouncedelay 1.4s infinite ease-in-out; animation: bouncedelay 1.4s infinite ease-in-out; -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-delay: -0.32s; animation-delay: -0.32s; } .change-bounce2 { background-color: @default-color; border-radius: 100%; display: inline-block; -webkit-animation: bouncedelay 1.4s infinite ease-in-out; animation: bouncedelay 1.4s infinite ease-in-out; -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-delay: -0.16s; animation-delay: -0.16s; } .change-bounce3 { background-color: @default-color; border-radius: 100%; display: inline-block; -webkit-animation: bouncedelay 1.4s infinite ease-in-out; animation: bouncedelay 1.4s infinite ease-in-out; -webkit-animation-fill-mode: both; animation-fill-mode: both; } @-webkit-keyframes bouncedelay { 0%, 80%, 100% { -webkit-transform: scale(0.0); } 40% { -webkit-transform: scale(1.0); } } @keyframes bouncedelay { 0%, 80%, 100% { transform: scale(0.0); -webkit-transform: scale(0.0); } 40% { transform: scale(1.0); -webkit-transform: scale(1.0); } }