index.html 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  6. <meta name="referer" content="never" />
  7. <meta name="renderer" content="webkit" />
  8. <meta
  9. name="viewport"
  10. content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=0"
  11. />
  12. <title></title>
  13. <link rel="icon" href="./favicon.ico" />
  14. <style>
  15. html,
  16. body,
  17. #app {
  18. height: 100%;
  19. }
  20. * {
  21. margin: 0;
  22. padding: 0;
  23. font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB",
  24. "Microsoft YaHei", "微软雅黑", Arial, sans-serif;
  25. }
  26. .preload__wrap {
  27. display: flex;
  28. flex-direction: column;
  29. letter-spacing: 1px;
  30. background-color: #2f3447;
  31. position: fixed;
  32. left: 0;
  33. top: 0;
  34. height: 100%;
  35. width: 100%;
  36. z-index: 9999;
  37. transition: all 0.3s ease-in;
  38. opacity: 1;
  39. pointer-events: none;
  40. }
  41. .preload__wrap.is-hide {
  42. opacity: 0;
  43. }
  44. .preload__container {
  45. display: flex;
  46. justify-content: center;
  47. align-items: center;
  48. flex-direction: column;
  49. width: 100%;
  50. user-select: none;
  51. -webkit-user-select: none;
  52. flex-grow: 1;
  53. }
  54. .preload__name {
  55. font-size: 30px;
  56. color: #fff;
  57. letter-spacing: 5px;
  58. font-weight: bold;
  59. margin-bottom: 30px;
  60. }
  61. .preload__title {
  62. color: #fff;
  63. font-size: 14px;
  64. margin: 30px 0 20px 0;
  65. }
  66. .preload__sub-title {
  67. color: #ababab;
  68. font-size: 12px;
  69. }
  70. .preload__footer {
  71. text-align: center;
  72. padding: 10px 0 20px 0;
  73. }
  74. .preload__footer a {
  75. font-size: 12px;
  76. color: #ababab;
  77. text-decoration: none;
  78. }
  79. .preload__loading {
  80. height: 30px;
  81. width: 30px;
  82. border-radius: 30px;
  83. border: 7px solid currentColor;
  84. border-bottom-color: #2f3447 !important;
  85. position: relative;
  86. animation: r 1s infinite cubic-bezier(0.17, 0.67, 0.83, 0.67),
  87. bc 2s infinite ease-in;
  88. transform: rotate(0deg);
  89. }
  90. @keyframes r {
  91. from {
  92. transform: rotate(0deg);
  93. }
  94. to {
  95. transform: rotate(360deg);
  96. }
  97. }
  98. .preload__loading::after,
  99. .preload__loading::before {
  100. content: "";
  101. display: inline-block;
  102. position: absolute;
  103. bottom: -2px;
  104. height: 7px;
  105. width: 7px;
  106. border-radius: 10px;
  107. background-color: currentColor;
  108. }
  109. .preload__loading::after {
  110. left: -1px;
  111. }
  112. .preload__loading::before {
  113. right: -1px;
  114. }
  115. @keyframes bc {
  116. 0% {
  117. color: #689cc5;
  118. }
  119. 25% {
  120. color: #b3b7e2;
  121. }
  122. 50% {
  123. color: #93dbe9;
  124. }
  125. 75% {
  126. color: #abbd81;
  127. }
  128. 100% {
  129. color: #689cc5;
  130. }
  131. }
  132. </style>
  133. </head>
  134. <body>
  135. <div class="preload__wrap" id="Loading">
  136. <div class="preload__container">
  137. <p class="preload__name">%VITE_NAME%</p>
  138. <div class="preload__loading"></div>
  139. <p class="preload__title">正在加载资源...</p>
  140. <p class="preload__sub-title">初次加载资源可能需要较多时间 请耐心等待</p>
  141. </div>
  142. <div class="preload__footer">
  143. <a href="https://cool-js.com" target="_blank"> https://cool-js.com </a>
  144. </div>
  145. </div>
  146. <div id="app"></div>
  147. <script type="module" src="/src/main.ts"></script>
  148. </body>
  149. </html>