Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 亚洲一区二区三区影院,久久免费视频在线观看30,三级欧美在线

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          手把手教你使用CSS3動畫特性實現loading效果,趕緊來學習一下吧

          loading效果在實際開發中是很常見的,尤其是在Ajax請求的時候,可以給用戶一個很好的交互體驗。

          今天這篇文章我們一起來看看如何通過CSS3實現各種不同的loading效果吧,文章中的代碼可以從github自取。

          https://github.com/zhouxiongking/article-pages/blob/master/articles/loading/loading.html

          CSS3

          實現效果

          首先我們來看看需要實現的效果。

          效果圖

          然后我們一個個來看都是怎么實現的吧。

          loadingA

          loadingA的效果就如音樂播放時的動態條一般,不停的連續執行。

          其主要實現思路如下:

          • 每個豎狀條都是一個簡單的div,div為一個小的圓形。

          • 給每個div加上一個動畫效果,該動畫的效果是高度逐漸變長,最后再變回原樣。

          • 每個div延遲不同的時間才開始執行,這樣就會有先后的層次感。

          然后我們來看看各個部分的代碼實現。

          • 基本的div元素

          基本的div元素是一個小的圓形。

          基本的div元素

          • 定義動畫

          定義的動畫主要是改變div的高度,在完成50%的時候達到最高值,完成100%時恢復到原來高度。

          動畫效果

          • 設置動畫

          將定義的動畫添加至animation屬性,設置一個動畫總執行時間,然后給5個div設置不同的延時時間。

          設置動畫

          • HTML元素

          將以上設置的CSS屬性都添加至HTML元素中。

          HTML元素

          將以上代碼寫完后,直接在瀏覽器運行就可以看到如loadingA的效果了。

          loadingB

          如果細心的看完loadingA的實現過程,一定可以聯想到loadingB的實現。

          loadingA是通過給高度加動畫,那么loadingB就是通過給寬度加動畫,同樣給5個div不同的延遲時間。

          這里我只給出其動畫定義,其他的內容與loadingA類似,詳細的內容可以通過github去看。

          loadingB動畫

          loadingC

          loadingC的實現效果如下。

          loadingC

          在loadingA和loadingB中是通過給高度和寬度增加動畫實現的,而loadingC是通過給五個div增加縱向位移實現的。

          loadingC實現的關鍵點就在于translateY的使用,因為動畫是從下往上跳動,所以在完成度50%時,translateY設定為負值。

          其定義的動畫部分代碼如下所示。

          定義動畫

          loadingD

          loadingD的實現效果如下。

          loadingD效果

          通過效果圖我們發現有兩點差異:

          • loading過程中透明度會發生變化,這個通過opacity實現。

          • 在接近完成時有個上下輕微抖動的效果,這個通過設置小單位的正負translateY值。

          得到的動畫代碼如下。

          loadingD動畫

          loadingE

          loadingE的動畫效果如下。

          loadingE

          loadingE的效果同loadingD類似,loadingD是通過縱向的位移變換,可以通過translateY實現。

          loadingE是通過水平方向位移變換,可以通過translateX來實現。

          而有一點不同的是,loadingE的div初始位置就是translateX(-300px),表示從左側開始運動。

          loadingE動畫

          loadingF

          loadingF定義的動畫如下所示。

          loadingF

          loadingF是旋轉效果,可以很容易想到是通過rotate實現。

          loadingF中只有一個div,邊框設置為虛線即可,其CSS樣式如下。

          loadingF基本樣式

          其定義的動畫樣式如下。

          loadingF定義動畫

          loadingG&loadingH

          loadingG與loadingH的動畫效果如下。

          loadingG&loadingH

          loadingG與loadingH類似,loadingH在loadingG的基礎上增加了幾個點。

          loadingG中是通過設置一個縱向的div-1,在該div-1內增加一個div-2,div-2就是轉動的圓點,div-2通過絕對定位計算出實際位置,當div-1大小變化時,div-2也應該重新計算位置。

          div-2的CSS代碼如下所示。

          loadingG基本樣式

          在loadingH中,div-1內有四個div,分別表示轉動的四個圓點,也是通過絕對定位計算偏移位置。

          最后設置動畫,只需要讓div-1在一個動畫周期內旋轉360度即可。

          loadingG

          loadingI

          loadingI的效果圖如下所示。

          loadingI

          loadingI的動畫主要涉及到放大縮小和旋轉兩個方面,放大縮小通過scale實現,旋轉通過rotate實現。具體的可以看看github上的完整代碼。

          結束語

          今天這篇文章主要是教大家如何使用CSS3的動畫特性去實現loading效果,完全可以不用借助于第三方庫,大家也動動手自己實現一下吧。

          loading效果在實際開發中是很常見的,尤其是在Ajax請求的時候,可以給用戶一個很好的交互體驗。

          今天這篇文章我們一起來看看如何通過CSS3實現各種不同的loading效果吧,文章中的代碼可以從github自取。

          https://github.com/zhouxiongking/article-pages/blob/master/articles/loading/loading.html

          CSS3

          實現效果

          首先我們來看看需要實現的效果。

          效果圖

          然后我們一個個來看都是怎么實現的吧。

          loadingA

          loadingA的效果就如音樂播放時的動態條一般,不停的連續執行。

          其主要實現思路如下:

          • 每個豎狀條都是一個簡單的div,div為一個小的圓形。

          • 給每個div加上一個動畫效果,該動畫的效果是高度逐漸變長,最后再變回原樣。

          • 每個div延遲不同的時間才開始執行,這樣就會有先后的層次感。

          然后我們來看看各個部分的代碼實現。

          • 基本的div元素

          基本的div元素是一個小的圓形。

          基本的div元素

          • 定義動畫

          定義的動畫主要是改變div的高度,在完成50%的時候達到最高值,完成100%時恢復到原來高度。

          動畫效果

          • 設置動畫

          將定義的動畫添加至animation屬性,設置一個動畫總執行時間,然后給5個div設置不同的延時時間。

          設置動畫

          • HTML元素

          將以上設置的CSS屬性都添加至HTML元素中。

          HTML元素

          將以上代碼寫完后,直接在瀏覽器運行就可以看到如loadingA的效果了。

          loadingB

          如果細心的看完loadingA的實現過程,一定可以聯想到loadingB的實現。

          loadingA是通過給高度加動畫,那么loadingB就是通過給寬度加動畫,同樣給5個div不同的延遲時間。

          這里我只給出其動畫定義,其他的內容與loadingA類似,詳細的內容可以通過github去看。

          loadingB動畫

          loadingC

          loadingC的實現效果如下。

          loadingC

          在loadingA和loadingB中是通過給高度和寬度增加動畫實現的,而loadingC是通過給五個div增加縱向位移實現的。

          loadingC實現的關鍵點就在于translateY的使用,因為動畫是從下往上跳動,所以在完成度50%時,translateY設定為負值。

          其定義的動畫部分代碼如下所示。

          定義動畫

          loadingD

          loadingD的實現效果如下。

          loadingD效果

          通過效果圖我們發現有兩點差異:

          • loading過程中透明度會發生變化,這個通過opacity實現。

          • 在接近完成時有個上下輕微抖動的效果,這個通過設置小單位的正負translateY值。

          得到的動畫代碼如下。

          loadingD動畫

          loadingE

          loadingE的動畫效果如下。

          loadingE

          loadingE的效果同loadingD類似,loadingD是通過縱向的位移變換,可以通過translateY實現。

          loadingE是通過水平方向位移變換,可以通過translateX來實現。

          而有一點不同的是,loadingE的div初始位置就是translateX(-300px),表示從左側開始運動。

          loadingE動畫

          loadingF

          loadingF定義的動畫如下所示。

          loadingF

          loadingF是旋轉效果,可以很容易想到是通過rotate實現。

          loadingF中只有一個div,邊框設置為虛線即可,其CSS樣式如下。

          loadingF基本樣式

          其定義的動畫樣式如下。

          loadingF定義動畫

          loadingG&loadingH

          loadingG與loadingH的動畫效果如下。

          loadingG&loadingH

          loadingG與loadingH類似,loadingH在loadingG的基礎上增加了幾個點。

          loadingG中是通過設置一個縱向的div-1,在該div-1內增加一個div-2,div-2就是轉動的圓點,div-2通過絕對定位計算出實際位置,當div-1大小變化時,div-2也應該重新計算位置。

          div-2的CSS代碼如下所示。

          loadingG基本樣式

          在loadingH中,div-1內有四個div,分別表示轉動的四個圓點,也是通過絕對定位計算偏移位置。

          最后設置動畫,只需要讓div-1在一個動畫周期內旋轉360度即可。

          loadingG

          loadingI

          loadingI的效果圖如下所示。

          loadingI

          loadingI的動畫主要涉及到放大縮小和旋轉兩個方面,放大縮小通過scale實現,旋轉通過rotate實現。具體的可以看看github上的完整代碼。

          結束語

          今天這篇文章主要是教大家如何使用CSS3的動畫特性去實現loading效果,完全可以不用借助于第三方庫,大家也動動手自己實現一下吧。


          loading等待效果圖對于前端頁面或者APP展示來說是非常常見的,目前大多數的效果圖都是GIF的格式。鑒于GIF格式的圖會比較大,我們完全可以使用CSS去實現一個漂亮的loading效果,今天我們就一起來看看吧。

          CSS3

          如果有感興趣的可以去github上看源碼,github地址為:

          https://github.com/zhouxiongking/article-pages/blob/master/articles/loading-pie/loading-pie.html

          效果圖

          首先,我們一起來看下使用CSS3編寫的loading效果圖,如下所示。

          loading效果圖

          效果分析

          針對上面的loading效果,我們進行仔細的分析,整體loading效果是由內圓和外圓組成。

          內部圓實際是由四個半圓組成,2個左半圓,2個右半圓,每側的兩個半圓通過顏色深淺進行區分,當然顏色大家可以隨便選取,然后通過定義動畫,在不同的時間節點通過z-index屬性顯示不同的半圓,剛好組成一個完整的旋轉效果。

          頁面實現

          這部分我們來看看頁面是如何通過代碼實現的。

          • HTML

          首先是頁面的HTML代碼,正如上面的分析,首先要具有內圓和外圓兩個div,然后內圓是通過4個半圓實現,實際內部是4個div,因此我們可以得到以下的HTML部分代碼。

          頁面HTML代碼

          • CSS

          其實最核心的部分就是CSS代碼,我會慢慢分析如何寫出CSS部分的代碼。

          首先是外圓部分,實際是一個完整的div通過border屬性構成3/4的圓,然后通過動畫轉動這個3/4的圓。因此我們可以直接得出外圓的所有樣式如下。

          外圓及其動畫樣式

          然后是內圓部分,內圓實際是一個完整的div,通過border-radius屬性得到完整的圓,其樣式如下。

          內圓外圈屬性

          其次是內部四個半圓的樣式,分為左邊和右邊兩個部分,左邊和右邊每個部分因為顏色上有區別,需要定義不同的動畫。其中左邊兩個半圓的通用屬性如下。

          左邊半圓通用屬性

          左半邊深色圓的動畫樣式如下。

          左半邊深色圓動畫

          左半邊淺色圓的動畫效果如下。

          左半邊淺色圓動畫

          右半邊兩個半圓通用樣式如下。

          右半邊兩個半圓通用樣式

          右半邊深色圓有動畫效果,而淺色圓沒有動畫效果,它們的樣式如下。

          右半邊深淺色半圓樣式

          至此,所有的CSS樣式講解完畢,如果大家完整運行后就可以得到文章開始的效果。

          結束語

          本篇文章主要講解了如何使用CSS3動畫來制作一個loading效果圖,感興趣的可以直接去github上看源碼,希望對你有所幫助~


          主站蜘蛛池模板: 日本欧洲视频一区| 国产精品免费一区二区三区| 日韩精品一区二区三区中文字幕| 亚洲码一区二区三区| 一区二区视频在线观看| 一区二区三区视频在线观看| 视频在线一区二区| 无码人妻精品一区二区三区99性 | 中文字幕av日韩精品一区二区| 中文字幕永久一区二区三区在线观看| 亚洲爽爽一区二区三区| 在线精品国产一区二区三区| 国产精品福利一区| 91精品一区国产高清在线| 无码精品黑人一区二区三区| 国产一区二区三区国产精品| 在线观看日韩一区| 深田咏美AV一区二区三区| 爆乳熟妇一区二区三区霸乳| 国产99视频精品一区| 一区二区三区在线播放视频| 亚洲电影一区二区三区| 亚洲老妈激情一区二区三区| 丝袜美腿一区二区三区| 欧美亚洲精品一区二区| 99国产精品欧美一区二区三区| 中文字幕一区二区在线播放| 久久久久国产一区二区三区| 丰满爆乳一区二区三区| 亚洲无线码在线一区观看 | 一区二区三区在线观看| 男插女高潮一区二区| 天堂Av无码Av一区二区三区| 国产一区在线播放| 久久se精品一区精品二区国产| 激情综合一区二区三区| 91在线视频一区| 精品国产一区在线观看 | 无码av免费毛片一区二区| 色狠狠色狠狠综合一区| 大帝AV在线一区二区三区|