欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用CSS時(shí)間打點(diǎn)的Loading效果的教程

鑫空間,鑫生活   發(fā)布時(shí)間:2015-06-08 16:23:01   作者:張?chǎng)涡?  我要評(píng)論
這篇文章主要介紹了使用CSS時(shí)間打點(diǎn)的Loading效果的教程,分別是基于box-shadow和基于border+background的兩種實(shí)現(xiàn)方法,需要的朋友可以參考下

基于box-shadow實(shí)現(xiàn)的打點(diǎn)效果

理論上,box-shadow可以實(shí)現(xiàn)任意的圖形效果,自然我們可以利用box-shadow生成我們的點(diǎn)效果,然后通過(guò)animation控制不同時(shí)間點(diǎn)點(diǎn)的數(shù)目就可以實(shí)現(xiàn)點(diǎn)點(diǎn)點(diǎn)... loading效果了~

您可以狠狠地點(diǎn)擊這里:CSS3 animation box-shadow漸進(jìn)實(shí)現(xiàn)打點(diǎn)動(dòng)畫demo

1. 漸進(jìn)兼容
支持CSS3 animation動(dòng)畫的瀏覽器顯示的就是打點(diǎn)動(dòng)畫效果;對(duì)于不支持的瀏覽器,IE7/IE8顯示的是真實(shí)的字符..., IE9瀏覽器雖然也是CSS3生成,但是是靜態(tài)的,沒有動(dòng)畫效果;此乃漸進(jìn)兼容。

2. 實(shí)現(xiàn)原理
首先HTML非常簡(jiǎn)單,就是一個(gè)標(biāo)簽一個(gè)類名(標(biāo)簽里面一定要空空如也),其他什么都不需要關(guān)心,就可以游刃幾乎各種場(chǎng)景,如下:

XML/HTML Code復(fù)制內(nèi)容到剪貼板
  1. 訂單提交中<span class="dotting"></span>  

上面代碼這個(gè)類名為dotting的span就是我們所有的玄機(jī)所在,頁(yè)面任意地方,只要有這一小撮HTML就可以有打點(diǎn)動(dòng)畫,與文字混排良好,且顏色自動(dòng)匹配。例如,本文“標(biāo)題一”和“標(biāo)題二”后面的點(diǎn)點(diǎn)點(diǎn)動(dòng)畫就是添加了這么點(diǎn)HTML.

下面是萬(wàn)眾矚目的CSS代碼了:

CSS Code復(fù)制內(nèi)容到剪貼板
  1. .dotting {   
  2.     displayinline-blockmin-width2pxmin-height2px;   
  3.     box-shadow: 2px 0 currentColor, 6px 0 currentColor, 10px 0 currentColor; /* for IE9+, ..., 3個(gè)點(diǎn) */  
  4.     animation: dot 4s infinite step-start both/* for IE10+, ... */  
  5.     *zoom: expression(this.innerHTML = '...'); /*  for IE7. 若無(wú)需兼容IE7, 此行刪除 */  
  6. }   
  7. .dotting:before { content'...'; } /* for IE8. 若無(wú)需兼容IE8, 此行以及下一行刪除*/  
  8. .dotting::before { content''; } /* for IE9+ 覆蓋 IE8 */  
  9. :root .dotting { margin-right8px; } /* for IE9+,FF,CH,OP,SF 占據(jù)空間*/  
  10.   
  11. @keyframes dot {   
  12.     25% { box-shadow: none; }                                  /* 0個(gè)點(diǎn) */  
  13.     50% { box-shadow: 2px 0 currentColor; }                    /* 1個(gè)點(diǎn) */  
  14.     75% { box-shadow: 2px 0 currentColor, 6px 0 currentColor;  /* 2個(gè)點(diǎn) */ }   
  15. }  

上面每行CSS都有其存在的道理(詳見注釋),這里我們又看到了currentColor這個(gè)關(guān)鍵字,IE9+瀏覽器支持,其可以讓CSS生成的圖形的顏色跟所處環(huán)境的color屬性值一樣,也就是跟文字顏色一樣,具體可參考我不久前寫的“currentColor-CSS3超高校級(jí)好用CSS關(guān)鍵字”一文。

我們動(dòng)畫一個(gè)周期4秒鐘,每秒分別顯示的是0~3個(gè)點(diǎn),使用step-start讓動(dòng)畫不連續(xù)(animation所有關(guān)鍵字“CSS3 animation漸進(jìn)實(shí)現(xiàn)點(diǎn)點(diǎn)點(diǎn)等待提示效果”這篇文章后面深藏詳細(xì)介紹,如有疑問(wèn),可參考),于是就有個(gè)類似gif打點(diǎn)動(dòng)畫效果,相信不難理解。

3. 美中不足
雖然幾乎所有瀏覽器都有模有樣,但是,從效果上講,還是有瑕疵的,IE10+以及FireFox瀏覽器下的點(diǎn)的邊緣有些虛(參見下截圖),雖然CSS代碼并沒有設(shè)置盒陰影模糊。這種羽化現(xiàn)象可以讓IE以及FireFox在大數(shù)值盒陰影時(shí)候效果更接近photoshop的陰影效果;但是,在小尺寸陰影時(shí)候,并不是我們想要的。

苛刻的設(shè)計(jì)師、完美主義的處女座顯然是不能對(duì)這個(gè)置若罔聞的。好在,我又想了另外一種方法實(shí)現(xiàn)

基于border + background實(shí)現(xiàn)的打點(diǎn)效果

我們除了可以使用box-shadow生成三個(gè)點(diǎn),還可以使用border + background-color實(shí)現(xiàn)等寬3點(diǎn)效果(如本標(biāo)題)。

您可以狠狠地點(diǎn)擊這里:animation border+background漸進(jìn)實(shí)現(xiàn)打點(diǎn)動(dòng)畫demo

1. 漸進(jìn)兼容
IE9以及IE10+以及FireFox的點(diǎn)再也不是模糊的,而是清清楚楚的小方點(diǎn)!

2. 實(shí)現(xiàn)原理
HTML還是那個(gè)HTML:

XML/HTML Code復(fù)制內(nèi)容到剪貼板
  1. 訂單提交中<span class="dotting"></span>  

CSS代碼如下:

CSS Code復(fù)制內(nèi)容到剪貼板
  1. .dotting {   
  2.     displayinline-blockwidth10pxmin-height2px;   
  3.     padding-right2px;   
  4.     border-left2px solid currentColor; border-right2px solid currentColor;      
  5.     background-color: currentColor; background-clipcontent-box;   
  6.     box-sizing: border-box;   
  7.     animation: dot 4s infinite step-start both;   
  8.     *zoom: expression(this.innerHTML = '...'); /* IE7 */  
  9. }   
  10. .dotting:before { content'...'; } /* IE8 */  
  11. .dotting::before { content''; }   
  12. :root .dotting { margin-left2pxpadding-left2px; } /* IE9+ */  
  13.   
  14. @keyframes dot {   
  15.     25% { border-colortransparentbackground-colortransparent; }          /* 0個(gè)點(diǎn) */  
  16.     50% { border-right-colortransparentbackground-colortransparent; }    /* 1個(gè)點(diǎn) */  
  17.     75% { border-right-colortransparent; }                                   /* 2個(gè)點(diǎn) */  
  18. }  

一些說(shuō)明:

  •     同樣是4秒動(dòng)畫,每秒鐘顯示1個(gè)點(diǎn);
        IE7/IE8實(shí)現(xiàn)原理跟上面box-shadow方法一致,都是內(nèi)容生成,如果無(wú)需兼容IE7/IE8, 可以按照第一個(gè)例子CSS代碼注釋說(shuō)明刪除一些CSS;
        currentColor關(guān)鍵字可以讓圖形字符化,必不可少;
        最大功臣是CSS3 background-clip屬性,可以讓IE9+瀏覽器下左右padding沒有背景色,于是形成了等分打點(diǎn)效果。CSS3 Background博大精深,有興趣可參考一篇很贊的文章“CSS3 Backgrounds相關(guān)介紹”,很多圖,移動(dòng)端非wifi慎點(diǎn);
        box-sizing是讓現(xiàn)代瀏覽器和IE7/IE8占據(jù)寬度完全一樣的功臣:IE7/IE8實(shí)際寬度是width+padding-right為12像素,其他現(xiàn)代瀏覽器為width+margin-left也是12像素;
        這里CSS代碼主要用來(lái)展示原理,故沒有顯示-webkit-animation以及@-webkit-keyframes私有前綴,實(shí)際目前還是需要的;

3. 優(yōu)勢(shì)所在

  •     CSS生成的點(diǎn)沒有虛化,效果更好;
        占據(jù)的尺寸各個(gè)瀏覽器完全一致,都是12像素寬度;
        顏色繼承;
        天然字符化顯示,與文字渾然天成;

相關(guān)文章

  • CSS 實(shí)現(xiàn)各種 Loading 效果附帶解析過(guò)程

    這篇文章主要介紹了CSS 實(shí)現(xiàn)各種 Loading 效果附帶解析過(guò)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-19
  • CSS loading效果之 吃豆人的實(shí)現(xiàn)

    這篇文章主要介紹了CSS loading效果之 吃豆人的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)
    2019-09-09
  • CSS3動(dòng)畫之DIY Loading動(dòng)畫

    這篇文章主要介紹了CSS3動(dòng)畫之DIY Loading動(dòng)畫的相關(guān)資料,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-27
  • 使用css3制作齒輪loading動(dòng)畫效果

    這是一款基于css3齒輪loading動(dòng)畫特效,使用font-awesome字體圖標(biāo)的齒輪圖標(biāo)作為圖案,通過(guò)CSS3 animation來(lái)制作三個(gè)齒輪的運(yùn)動(dòng)效果。感興趣的朋友跟隨小編一起看看吧
    2018-09-27
  • CSS實(shí)現(xiàn)一個(gè)簡(jiǎn)單loading動(dòng)畫效果

    CSS的animation可以做出大多數(shù)的loading效果,今天腳本之家小編給大家?guī)?lái)了基于CSS實(shí)現(xiàn)一個(gè)簡(jiǎn)單loading動(dòng)畫效果,非常不錯(cuò),需要的朋友參考下吧
    2018-04-17
  • 一份純CSS loading動(dòng)畫效果代碼示例

    本篇文章主要介紹了一份純CSS loading效果代碼示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-16
  • 用純CSS實(shí)現(xiàn)餅狀Loading等待圖效果

    這篇文章主要介紹了用純CSS實(shí)現(xiàn)餅狀Loading等待圖效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-23
  • css實(shí)現(xiàn)葉子形狀loading效果

    這篇文章主要為大家介紹了css實(shí)現(xiàn)葉子形狀loading效果的方法,通過(guò)修改border-radius的參數(shù)實(shí)現(xiàn)的該效果,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-01-30
  • 純CSS實(shí)現(xiàn)loading加載中效果(多種展現(xiàn)形式)

    現(xiàn)如今網(wǎng)頁(yè)越來(lái)越趨近于動(dòng)畫,相信大家平時(shí)瀏覽網(wǎng)頁(yè)或多或少都能看到一些動(dòng)畫效果,今天我們來(lái)做一個(gè)有意思的動(dòng)畫效果,純 css 實(shí)現(xiàn) loading 加載中(多種展現(xiàn)形式),下面
    2023-02-08

最新評(píng)論