index.html 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  6. <meta name="renderer" content="webkit">
  7. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
  8. <link rel="icon" href="<%= BASE_URL %>favicon.ico">
  9. <title><%= webpackConfig.name %></title>
  10. <!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
  11. <!-- 高德地图API配置(由 vue-amap 统一管理) -->
  12. <style>
  13. html,
  14. body,
  15. #app {
  16. height: 100%;
  17. margin: 0px;
  18. padding: 0px;
  19. }
  20. .chromeframe {
  21. margin: 0.2em 0;
  22. background: #ccc;
  23. color: #000;
  24. padding: 0.2em 0;
  25. }
  26. #loader-wrapper {
  27. position: fixed;
  28. top: 0;
  29. left: 0;
  30. width: 100%;
  31. height: 100%;
  32. z-index: 999999;
  33. background:
  34. radial-gradient(circle at 20% 30%, rgba(76, 175, 80, 0.4) 0%, transparent 60%),
  35. radial-gradient(circle at 80% 70%, rgba(102, 187, 106, 0.4) 0%, transparent 60%),
  36. radial-gradient(circle at 40% 80%, rgba(76, 175, 80, 0.3) 0%, transparent 50%),
  37. radial-gradient(circle at 60% 20%, rgba(129, 199, 132, 0.3) 0%, transparent 50%),
  38. linear-gradient(135deg, #2E7D32 0%, #4CAF50 25%, #66BB6A 50%, #4CAF50 75%, #388E3C 100%);
  39. overflow: hidden;
  40. }
  41. #loader-wrapper::before {
  42. content: '';
  43. position: absolute;
  44. top: 0;
  45. left: 0;
  46. right: 0;
  47. bottom: 0;
  48. background:
  49. repeating-linear-gradient(
  50. 45deg,
  51. transparent,
  52. transparent 3px,
  53. rgba(255, 255, 255, 0.02) 3px,
  54. rgba(255, 255, 255, 0.02) 6px
  55. );
  56. animation: shimmer 4s ease-in-out infinite;
  57. }
  58. #loader-wrapper::after {
  59. content: '';
  60. position: absolute;
  61. top: -25%;
  62. left: -25%;
  63. width: 150%;
  64. height: 150%;
  65. background: radial-gradient(
  66. circle,
  67. rgba(255, 255, 255, 0.08) 0%,
  68. rgba(255, 255, 255, 0.04) 30%,
  69. transparent 60%
  70. );
  71. animation: rotate 12s linear infinite;
  72. }
  73. #loader {
  74. display: block;
  75. position: relative;
  76. left: 50%;
  77. top: 50%;
  78. width: 150px;
  79. height: 150px;
  80. margin: -75px 0 0 -75px;
  81. border-radius: 50%;
  82. border: 4px solid transparent;
  83. border-top: 4px solid rgba(255, 255, 255, 0.9);
  84. border-right: 4px solid rgba(255, 255, 255, 0.3);
  85. border-bottom: 4px solid rgba(255, 255, 255, 0.1);
  86. border-left: 4px solid rgba(255, 255, 255, 0.6);
  87. box-shadow:
  88. 0 0 30px rgba(76, 175, 80, 0.4),
  89. inset 0 0 20px rgba(255, 255, 255, 0.1),
  90. 0 0 60px rgba(76, 175, 80, 0.2);
  91. backdrop-filter: blur(2px);
  92. -webkit-animation: spin 2s linear infinite;
  93. -ms-animation: spin 2s linear infinite;
  94. -moz-animation: spin 2s linear infinite;
  95. -o-animation: spin 2s linear infinite;
  96. animation: spin 2s linear infinite;
  97. z-index: 1001;
  98. }
  99. #loader:before {
  100. content: "";
  101. position: absolute;
  102. top: 5px;
  103. left: 5px;
  104. right: 5px;
  105. bottom: 5px;
  106. border-radius: 50%;
  107. border: 3px solid transparent;
  108. border-top-color: rgba(255, 255, 255, 0.7);
  109. -webkit-animation: spin 3s linear infinite;
  110. -moz-animation: spin 3s linear infinite;
  111. -o-animation: spin 3s linear infinite;
  112. -ms-animation: spin 3s linear infinite;
  113. animation: spin 3s linear infinite;
  114. }
  115. #loader:after {
  116. content: "";
  117. position: absolute;
  118. top: 15px;
  119. left: 15px;
  120. right: 15px;
  121. bottom: 15px;
  122. border-radius: 50%;
  123. border: 3px solid transparent;
  124. border-top-color: rgba(255, 255, 255, 0.5);
  125. -moz-animation: spin 1.5s linear infinite;
  126. -o-animation: spin 1.5s linear infinite;
  127. -ms-animation: spin 1.5s linear infinite;
  128. -webkit-animation: spin 1.5s linear infinite;
  129. animation: spin 1.5s linear infinite;
  130. }
  131. @-webkit-keyframes spin {
  132. 0% {
  133. -webkit-transform: rotate(0deg);
  134. -ms-transform: rotate(0deg);
  135. transform: rotate(0deg);
  136. }
  137. 100% {
  138. -webkit-transform: rotate(360deg);
  139. -ms-transform: rotate(360deg);
  140. transform: rotate(360deg);
  141. }
  142. }
  143. @keyframes spin {
  144. 0% {
  145. -webkit-transform: rotate(0deg);
  146. -ms-transform: rotate(0deg);
  147. transform: rotate(0deg);
  148. }
  149. 100% {
  150. -webkit-transform: rotate(360deg);
  151. -ms-transform: rotate(360deg);
  152. transform: rotate(360deg);
  153. }
  154. }
  155. @keyframes shimmer {
  156. 0%, 100% {
  157. opacity: 0.3;
  158. transform: translateX(-100%);
  159. }
  160. 50% {
  161. opacity: 0.8;
  162. transform: translateX(100%);
  163. }
  164. }
  165. @keyframes rotate {
  166. 0% {
  167. transform: rotate(0deg);
  168. }
  169. 100% {
  170. transform: rotate(360deg);
  171. }
  172. }
  173. @keyframes pulse {
  174. 0%, 100% {
  175. opacity: 0.6;
  176. transform: scale(1);
  177. }
  178. 50% {
  179. opacity: 1;
  180. transform: scale(1.05);
  181. }
  182. }
  183. .loaded #loader {
  184. opacity: 0;
  185. -webkit-transition: all 0.3s ease-out;
  186. transition: all 0.3s ease-out;
  187. }
  188. .loaded #loader-wrapper {
  189. visibility: hidden;
  190. -webkit-transform: translateY(-100%);
  191. -ms-transform: translateY(-100%);
  192. transform: translateY(-100%);
  193. -webkit-transition: all 0.3s 1s ease-out;
  194. transition: all 0.3s 1s ease-out;
  195. }
  196. .no-js #loader-wrapper {
  197. display: none;
  198. }
  199. .no-js h1 {
  200. color: #222222;
  201. }
  202. #loader-wrapper .load_title {
  203. font-family: 'Open Sans', 'Microsoft YaHei', sans-serif;
  204. color: #FFF;
  205. font-size: 20px;
  206. font-weight: 600;
  207. width: 100%;
  208. text-align: center;
  209. z-index: 9999999999999;
  210. position: absolute;
  211. top: 60%;
  212. opacity: 1;
  213. line-height: 30px;
  214. text-shadow:
  215. 0 2px 4px rgba(0, 0, 0, 0.3),
  216. 0 0 20px rgba(76, 175, 80, 0.6),
  217. 0 0 40px rgba(76, 175, 80, 0.3);
  218. letter-spacing: 1px;
  219. animation: pulse 2s ease-in-out infinite;
  220. }
  221. #loader-wrapper .load_title span {
  222. font-weight: normal;
  223. font-style: italic;
  224. font-size: 14px;
  225. color: rgba(255, 255, 255, 0.8);
  226. opacity: 0.7;
  227. display: block;
  228. margin-top: 8px;
  229. text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  230. }
  231. </style>
  232. </head>
  233. <body>
  234. <div id="app">
  235. <div id="loader-wrapper">
  236. <div id="loader"></div>
  237. <div class="load_title">正在加载系统资源,请耐心等待</div>
  238. </div>
  239. </div>
  240. </body>
  241. </html>