index.html 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <link rel="icon" href="/favicon.ico" />
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  8. <link rel="stylesheet" href="iconfont.css">
  9. <title>%VITE_APP_TITLE%</title>
  10. </head>
  11. <body>
  12. <div id="app">
  13. <style>
  14. .app-loading {
  15. display: flex;
  16. width: 100%;
  17. height: 100%;
  18. justify-content: center;
  19. align-items: center;
  20. flex-direction: column;
  21. background: #f0f2f5;
  22. }
  23. .app-loading .app-loading-wrap {
  24. position: absolute;
  25. top: 50%;
  26. left: 50%;
  27. display: flex;
  28. -webkit-transform: translate3d(-50%, -50%, 0);
  29. transform: translate3d(-50%, -50%, 0);
  30. justify-content: center;
  31. align-items: center;
  32. flex-direction: column;
  33. }
  34. .app-loading .app-loading-title {
  35. margin-bottom: 30px;
  36. font-size: 20px;
  37. font-weight: bold;
  38. text-align: center;
  39. }
  40. .app-loading .app-loading-logo {
  41. width: 100px;
  42. margin: 0 auto 15px auto;
  43. }
  44. .app-loading .app-loading-item {
  45. position: relative;
  46. display: inline-block;
  47. width: 60px;
  48. height: 60px;
  49. vertical-align: middle;
  50. border-radius: 50%;
  51. }
  52. .app-loading .app-loading-outter {
  53. position: absolute;
  54. width: 100%;
  55. height: 100%;
  56. border: 4px solid #2d8cf0;
  57. border-bottom: 0;
  58. border-left-color: transparent;
  59. border-radius: 50%;
  60. animation: loader-outter 1s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
  61. }
  62. .app-loading .app-loading-inner {
  63. position: absolute;
  64. top: calc(50% - 20px);
  65. left: calc(50% - 20px);
  66. width: 40px;
  67. height: 40px;
  68. border: 4px solid #87bdff;
  69. border-right: 0;
  70. border-top-color: transparent;
  71. border-radius: 50%;
  72. animation: loader-inner 1s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
  73. }
  74. @-webkit-keyframes loader-outter {
  75. 0% {
  76. -webkit-transform: rotate(0deg);
  77. transform: rotate(0deg);
  78. }
  79. 100% {
  80. -webkit-transform: rotate(360deg);
  81. transform: rotate(360deg);
  82. }
  83. }
  84. @keyframes loader-outter {
  85. 0% {
  86. -webkit-transform: rotate(0deg);
  87. transform: rotate(0deg);
  88. }
  89. 100% {
  90. -webkit-transform: rotate(360deg);
  91. transform: rotate(360deg);
  92. }
  93. }
  94. @-webkit-keyframes loader-inner {
  95. 0% {
  96. -webkit-transform: rotate(0deg);
  97. transform: rotate(0deg);
  98. }
  99. 100% {
  100. -webkit-transform: rotate(-360deg);
  101. transform: rotate(-360deg);
  102. }
  103. }
  104. @keyframes loader-inner {
  105. 0% {
  106. -webkit-transform: rotate(0deg);
  107. transform: rotate(0deg);
  108. }
  109. 100% {
  110. -webkit-transform: rotate(-360deg);
  111. transform: rotate(-360deg);
  112. }
  113. }
  114. </style>
  115. <div class="app-loading">
  116. <div class="app-loading-wrap">
  117. <div class="app-loading-item">
  118. <div class="app-loading-outter"></div>
  119. <div class="app-loading-inner"></div>
  120. </div>
  121. </div>
  122. </div>
  123. </div>
  124. <script type="module" src="/src/main.ts"></script>
  125. </body>
  126. </html>