首屏加载优化代码

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta name="format-detection" content="telephone=no">
    <meta http-equiv="X-UA-Compatible" content="chrome=1" />
    <link rel="icon" href="<%= BASE_URL %>favicon.ico">
    <link rel="stylesheet" href="<%= BASE_URL %>cdn/element-ui/2.5.4/theme-chalk/index.css">
    <link rel="stylesheet" href="<%= BASE_URL %>cdn/animate/3.5.2/animate.css">
    <link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/1.0.0/index.css">
    <link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/1.0.0/iconfont.css">
    <link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/1.0.0/index.css">
    <title>vue-demo</title>
    
   <style>
     html,
     body,
     #app {
       height: 100%;
       margin: 0px;
       padding: 0px;
     }

     .chromeframe {
       margin: 0.2em 0;
       background: #ccc;
       color: #000;
       padding: 0.2em 0;
     }

     #loader-wrapper {
       position: fixed;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
       z-index: 999999;
     }

     #loader {
       display: block;
       position: relative;
       left: 50%;
       top: 50%;
       width: 150px;
       height: 150px;
       margin: -75px 0 0 -75px;
       border-radius: 50%;
       border: 3px solid transparent;
       /* COLOR 1 */
       border-top-color: #FFF;
       -webkit-animation: spin 2s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       -ms-animation: spin 2s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       -moz-animation: spin 2s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       -o-animation: spin 2s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       animation: spin 2s linear infinite;
       /* Chrome, Firefox 16+, IE 10+, Opera */
       z-index: 1001;
     }

     #loader:before {
       content: "";
       position: absolute;
       top: 5px;
       left: 5px;
       right: 5px;
       bottom: 5px;
       border-radius: 50%;
       border: 3px solid transparent;
       /* COLOR 2 */
       border-top-color: #FFF;
       -webkit-animation: spin 3s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       -moz-animation: spin 3s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       -o-animation: spin 3s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       -ms-animation: spin 3s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       animation: spin 3s linear infinite;
       /* Chrome, Firefox 16+, IE 10+, Opera */
     }

     #loader:after {
       content: "";
       position: absolute;
       top: 15px;
       left: 15px;
       right: 15px;
       bottom: 15px;
       border-radius: 50%;
       border: 3px solid transparent;
       border-top-color: #FFF;
       /* COLOR 3 */
       -moz-animation: spin 1.5s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       -o-animation: spin 1.5s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       -ms-animation: spin 1.5s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       -webkit-animation: spin 1.5s linear infinite;
       /* Chrome, Opera 15+, Safari 5+ */
       animation: spin 1.5s linear infinite;
       /* Chrome, Firefox 16+, IE 10+, Opera */
     }

     @-webkit-keyframes spin {
       0% {
         -webkit-transform: rotate(0deg);
         /* Chrome, Opera 15+, Safari 3.1+ */
         -ms-transform: rotate(0deg);
         /* IE 9 */
         transform: rotate(0deg);
         /* Firefox 16+, IE 10+, Opera */
       }

       100% {
         -webkit-transform: rotate(360deg);
         /* Chrome, Opera 15+, Safari 3.1+ */
         -ms-transform: rotate(360deg);
         /* IE 9 */
         transform: rotate(360deg);
         /* Firefox 16+, IE 10+, Opera */
       }
     }

     @keyframes spin {
       0% {
         -webkit-transform: rotate(0deg);
         /* Chrome, Opera 15+, Safari 3.1+ */
         -ms-transform: rotate(0deg);
         /* IE 9 */
         transform: rotate(0deg);
         /* Firefox 16+, IE 10+, Opera */
       }

       100% {
         -webkit-transform: rotate(360deg);
         /* Chrome, Opera 15+, Safari 3.1+ */
         -ms-transform: rotate(360deg);
         /* IE 9 */
         transform: rotate(360deg);
         /* Firefox 16+, IE 10+, Opera */
       }
     }

     #loader-wrapper .loader-section {
       position: fixed;
       top: 0;
       width: 51%;
       height: 100%;
       background: #7171C6;
       /* Old browsers */
       z-index: 1000;
       -webkit-transform: translateX(0);
       /* Chrome, Opera 15+, Safari 3.1+ */
       -ms-transform: translateX(0);
       /* IE 9 */
       transform: translateX(0);
       /* Firefox 16+, IE 10+, Opera */
     }

     #loader-wrapper .loader-section.section-left {
       left: 0;
     }

     #loader-wrapper .loader-section.section-right {
       right: 0;
     }

     /* Loaded */
     .loaded #loader-wrapper .loader-section.section-left {
       -webkit-transform: translateX(-100%);
       /* Chrome, Opera 15+, Safari 3.1+ */
       -ms-transform: translateX(-100%);
       /* IE 9 */
       transform: translateX(-100%);
       /* Firefox 16+, IE 10+, Opera */
       -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
       transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
     }

     .loaded #loader-wrapper .loader-section.section-right {
       -webkit-transform: translateX(100%);
       /* Chrome, Opera 15+, Safari 3.1+ */
       -ms-transform: translateX(100%);
       /* IE 9 */
       transform: translateX(100%);
       /* Firefox 16+, IE 10+, Opera */
       -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
       transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
     }

     .loaded #loader {
       opacity: 0;
       -webkit-transition: all 0.3s ease-out;
       transition: all 0.3s ease-out;
     }

     .loaded #loader-wrapper {
       visibility: hidden;
       -webkit-transform: translateY(-100%);
       /* Chrome, Opera 15+, Safari 3.1+ */
       -ms-transform: translateY(-100%);
       /* IE 9 */
       transform: translateY(-100%);
       /* Firefox 16+, IE 10+, Opera */
       -webkit-transition: all 0.3s 1s ease-out;
       transition: all 0.3s 1s ease-out;
     }

     /* JavaScript Turned Off */
     .no-js #loader-wrapper {
       display: none;
     }

     .no-js h1 {
       color: #222222;
     }

     #loader-wrapper .load_title {
       font-family: 'Open Sans';
       color: #FFF;
       font-size: 19px;
       width: 100%;
       text-align: center;
       z-index: 9999999999999;
       position: absolute;
       top: 60%;
       opacity: 1;
       line-height: 30px;
     }

     #loader-wrapper .load_title span {
       font-weight: normal;
       font-style: italic;
       font-size: 13px;
       color: #FFF;
       opacity: 0.5;
     }
   </style>
    
  </head>
  <body>
    <noscript>
      <strong>We're sorry but vue-demo doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
    </noscript>
    
    <div id="app">
      <div id="loader-wrapper">
        <div id="loader"></div>
        <div class="loader-section section-left"></div>
        <div class="loader-section section-right"></div>
        <div class="load_title">正在加载 vue,请耐心等待
          <br>
          <span>V1.3</span>
        </div>
      </div>
    </div>

    <!-- built files will be auto injected -->
    <script src="<%= BASE_URL %>cdn/vue/2.5.2/vue.min.js" charset="utf-8"></script>
    <script src="<%= BASE_URL %>cdn/vuex/2.4.1/vuex.min.js" charset="utf-8"></script>
    <script src="<%= BASE_URL %>cdn/vue-router/3.0.1/vue-router.min.js" charset="utf-8"></script>
    <script src="<%= BASE_URL %>cdn/axios/1.0.0/axios.min.js" charset="utf-8"></script>
    <script src="<%= BASE_URL %>cdn/element-ui/2.5.4/index.js" charset="utf-8"></script>
  </body>

</html>

  

posted @ 2019-06-26 18:28  Mrco7837  阅读(316)  评论(0编辑  收藏  举报