1. 程式人生 > >css3實現三種不同的loading載入動畫效果

css3實現三種不同的loading載入動畫效果

HTML:

<div class="box">
    <div class="loader">
        <div class="loading-1">
            <i></i>
        </div>
    </div>
    <div class="loader">
        <div class="loading-2">
            <i></i>
            <i></i>
            <i
>
</i> <i></i> <i></i> </div> </div> <div class="loader"> <div class="loading-3"> <i></i> <i></i> <i></i> <i>
</i> <i></i> <i></i> <i></i> <i></i> </div> </div> </div>

CSS:

.box{
    width: 100%;
    padding: 3%;
    box-sizing: border-box;
    overflow: hidden;
}
.loader{
    width
: 30%
; border: 1px solid #ccc; float: left; margin-left: 3%; height: 200px; display: flex; box-sizing: border-box; align-items: center; justify-content: center; }
/*第一種動畫載入開始*/ .loading-1{ width: 35px; height: 35px; position: relative; } @-webkit-keyframes loading-1{ 0%{ transform: rotate(0deg); } 50%{ transform: rotate(180deg); } 100%{ transform: rotate(360deg); } } .loading-1 i{ display: block; width: 100%; height: 100%; border-radius: 50%; background: linear-gradient(transparent 0%,transparent 70%,#333 30%,#333 100%); -webkit-animation: loading-1 0.6s linear 0s infinite; } /*第一種動畫載入結束*/ /*第二種動畫載入開始*/ @-webkit-keyframes loading-2{ 0%{ transform: scale(1); } 50%{ transform: scale(0.4); } 100%{ transform: scale(1); } } .loading-2 i{ display: inline-block; width: 4px; height: 35px; margin: 0 2px; background: #333; border-radius: 2px; -webkit-animation: loading-2 1s ease-in 0.1s infinite; } .loading-2 i:nth-child(1){ -webkit-animation: loading-2 1s ease-in 0.1s infinite; } .loading-2 i:nth-child(2){ -webkit-animation: loading-2 1s ease-in 0.2s infinite; } .loading-2 i:nth-child(3){ -webkit-animation: loading-2 1s ease-in 0.3s infinite; } .loading-2 i:nth-child(4){ -webkit-animation: loading-2 1s ease-in 0.4s infinite; } .loading-2 i:nth-child(5){ -webkit-animation: loading-2 1s ease-in 0.5s infinite; } /*第二種動畫載入結束*/ /*第三種動畫載入開始*/ @-webkit-keyframes loading-3{ 50%{ transform: scale(0.4); opacity: 0.3; } 100%{ transform: scale(1); opacity: 1; } } .loading-3{ position: relative; } .loading-3 i{ display: block; width: 15px; height: 15px; border-radius: 50%; position: absolute; background: #333; } .loading-3 i:nth-child(1){ top: 25px; left: 0; -webkit-animation: loading-3 1s ease 0s infinite; } .loading-3 i:nth-child(2){ top: 17px; left: 17px; -webkit-animation: loading-3 1s ease 0.12s infinite; } .loading-3 i:nth-child(3){ top: 0; left: 25px; -webkit-animation: loading-3 1s ease 0.24s infinite; } .loading-3 i:nth-child(4){ top: -17px; left: 17px; -webkit-animation: loading-3 1s ease 0.36s infinite; } .loading-3 i:nth-child(5){ top: -25px; left: 0; -webkit-animation: loading-3 1s ease 0.48s infinite; } .loading-3 i:nth-child(6){ top: -17px; left: -17px; -webkit-animation: loading-3 1s ease 0.6s infinite; } .loading-3 i:nth-child(7){ top: 0; left: -25px; -webkit-animation: loading-3 1s ease 0.72s infinite; } .loading-3 i:nth-child(8){ top: 17px; left: -17px; -webkit-animation: loading-3 1s ease 0.84s infinite; } /*第三種動畫載入結束*/

效果:
這裡寫圖片描述