吹吹??屁,做做??Loading,內(nèi)附彩虹魔力轉(zhuǎn)圈圈 ??

彩虹Loading

效果圖

rainbow-loading.gif

HTML結(jié)構(gòu)

            <div class="mask">
    
                <div class="loading">
                
                    <div class="vertical-bar"></div>
                    <div class="vertical-bar"></div>
                    <div class="vertical-bar"></div>
                    <div class="vertical-bar"></div>
                    <div class="vertical-bar"></div>
                    <div class="vertical-bar"></div>
                    <div class="vertical-bar"></div>
                    <div class="vertical-bar"></div>

                </div>

            </div>

主要有兩部分一部分是mask樣式的遮罩層,還有就是里面的loading,veryical-barlaoding樣式。

CSS樣式

CSS部分分成兩部分來(lái)看首先看遮罩層的樣式

.mask{
    position:absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(255, 255, 255,0.8);
    z-index: 250;
    overflow: hidden;
    pointer-events: none;
}


.mask::before {
    content: "\2716";
    pointer-events: auto;
    position: absolute;
    top:5%;
    left: 80%;
    font-size: 3rem;
}

mask樣式設(shè)置了position為相對(duì)body元素為絕對(duì)位置脫離正常文檔流,并設(shè)置為全屏,設(shè)置z軸層數(shù)為250 完全沒(méi)有暗喻的意思哈。設(shè)置布局為彈性布局,并使內(nèi)部元素 水平 垂直 居中,并設(shè)置 鼠標(biāo)事件失效。
.mask::before利用前置偽元素 創(chuàng)建關(guān)閉圖標(biāo),實(shí)現(xiàn)loading關(guān)閉功能。

接下來(lái)看一下重頭戲loading,veryical-bar

.loading{

    height: 4rem;
    width: 8rem;
    
    display: flex;
    align-items: center;

}

.loading .vertical-bar{
    
    width: 1rem;
    height: 4rem;
    margin: 0 3px;
    background-color: #000; 
    animation: loading-bar 0.8s infinite;
}

.loading .vertical-bar:nth-child(1){
    background-color: black;
}

.loading .vertical-bar:nth-child(2){
    animation-delay: 0.1s;
    background-color: red;
}

height: 4rem; width: 8rem;首先設(shè)置loading的長(zhǎng)寬;

display: flex; align-items: center; 設(shè)置為彈性布局,這樣內(nèi)部塊級(jí)元素不會(huì)獨(dú)占一行了,并設(shè)置內(nèi)部豎條垂直居中。

通過(guò).loading .vertical-bar主要設(shè)置了豎條的長(zhǎng)寬,外部間隔,背景色 還有變化的動(dòng)畫。
通過(guò).loading .vertical-bar:nth-child(n)設(shè)置內(nèi)部一共8個(gè)豎條每個(gè)豎條的背景色不同 而且 動(dòng)畫開始的延遲時(shí)間不同。

@keyframes loading-bar{

    0%{
        height: 4rem;
        opacity: 0.4;
    }
    50%{
        height: 0rem;
        opacity: 1;
    }
    100%{
        height: 4rem;
        opacity: 0.4;
    }

}

定義了豎條的動(dòng)態(tài)幀,起始滿長(zhǎng)度;0.4的不透明度,中途一般長(zhǎng)度,1的不透明度,最后又是滿長(zhǎng)度;0.4的不透明度。

結(jié)語(yǔ)

本文所有源碼可以點(diǎn)擊鏈接下載,源碼中還有彩虹圈圈Loading的彩蛋哦,趕緊去看看吧。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問(wèn)答題47 /72 常見(jiàn)瀏覽器兼容性問(wèn)題與解決方案? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,156評(píng)論 1 92
  • 一、20160328-聽永澄解讀第十二章《輔助閱讀》 (一)4個(gè)收獲 1.關(guān)于熱情靠譜不的拓展。 真正的高手是把無(wú)...
    周而佳境閱讀 353評(píng)論 0 0
  • 3.1 吃飯穿衣 我的童年時(shí)代,雖然物質(zhì)匱乏,生活清苦。但是依然開心、快樂(lè)地生活著。 在正常年景下,我家作為一個(gè)中...
    蔡喜源閱讀 439評(píng)論 2 2
  • 城區(qū)禁煤如火如荼,百姓家中如坐冰窖!大氣污染防控緊迫,寒窖冰凍何人問(wèn)津?
    夜繁星晝飄云閱讀 218評(píng)論 0 0
  • 今天早上,六點(diǎn)半我準(zhǔn)時(shí)趕上了到旁邊地鐵站的接駁車,這個(gè)車半個(gè)鐘一班,要是我錯(cuò)過(guò)了這一班,得等下一班七點(diǎn)鐘的。 自從...
    qq167閱讀 209評(píng)論 0 0

友情鏈接更多精彩內(nèi)容