mock平台

Loading.scss 1.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. $ball-color:#30a1f2;
  2. $ball-size:.15rem;
  3. $ball-margin:.02rem;
  4. $loader-radius:.25rem;
  5. @function delay($interval, $count, $index) {
  6. @return ($index * $interval) - ($interval * $count);
  7. }
  8. @keyframes ball-spin-fade-loader {
  9. 50% {
  10. opacity: 0.3;
  11. transform: scale(0.4);
  12. }
  13. 100% {
  14. opacity: 1;
  15. transform: scale(1);
  16. }
  17. }
  18. @mixin ball-spin-fade-loader($n:8,$start:1){
  19. @for $i from $start through $n {
  20. > div:nth-child(#{$i}) {
  21. $quarter: ($loader-radius/2) + ($loader-radius/5.5);
  22. @if $i == 1 {
  23. top: $loader-radius;
  24. left: 0;
  25. } @else if $i == 2 {
  26. top: $quarter;
  27. left: $quarter;
  28. } @else if $i == 3 {
  29. top: 0;
  30. left: $loader-radius;
  31. } @else if $i == 4 {
  32. top: -$quarter;
  33. left: $quarter;
  34. } @else if $i == 5 {
  35. top: -$loader-radius;
  36. left: 0;
  37. } @else if $i == 6 {
  38. top: -$quarter;
  39. left: -$quarter;
  40. } @else if $i == 7 {
  41. top: 0;
  42. left: -$loader-radius;
  43. } @else if $i == 8 {
  44. top: $quarter;
  45. left: -$quarter;
  46. }
  47. animation: ball-spin-fade-loader 1s delay(0.12s, $n, $i - 1) infinite linear;
  48. }
  49. }
  50. }
  51. .loading-box{
  52. align-items: center;
  53. justify-content: center;
  54. position: fixed;
  55. left: 0;
  56. right: 0;
  57. top: 0;
  58. bottom: 0;
  59. z-index: 9999;
  60. &-bg{
  61. position: absolute;
  62. left: 0;
  63. top: 0;
  64. height: 100%;
  65. width: 100%;
  66. background: rgba(255,255,255,.7);
  67. }
  68. &-inner{
  69. @include ball-spin-fade-loader();
  70. position: relative;
  71. >div{
  72. position: absolute;
  73. width: $ball-size;
  74. height: $ball-size;
  75. border-radius: 50%;
  76. margin: $ball-margin;
  77. background-color: $ball-color;
  78. animation-fill-mode: both;
  79. }
  80. }
  81. }