如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)

這篇文章主要介紹了如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà),具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括集賢網(wǎng)站建設(shè)、集賢網(wǎng)站制作、集賢網(wǎng)頁(yè)制作以及集賢網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,集賢網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到集賢省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)

由于生成gif的工具比較弱(在線求好用的mac版gif錄頻生成工具...), 我不得不上傳個(gè)原圖, 大家自行腦補(bǔ).

如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)

接下來(lái)我們來(lái)研究實(shí)現(xiàn)原理和實(shí)現(xiàn)方式.

動(dòng)畫(huà)拆解

要想用純css實(shí)現(xiàn)曲線, 我們第一反應(yīng)就是用border-radius這個(gè)屬性, 比如說(shuō)實(shí)現(xiàn)一個(gè)圓, 我們只需要如下設(shè)置:

.circle {   border-radius: 50%; }

實(shí)現(xiàn)橢圓,扇形, 半橢圓這些, 只需要設(shè)置不同邊的圓角即可, 如下:

.circle {   border-radius: 50% 100% 40% 60%; }

以上的代碼效果如下:

如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)  

我們?cè)侔l(fā)揮一下想象, 如果是閉合曲線, 是不是也能用同樣的方法實(shí)現(xiàn)呢?

如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)

我們只需要將background換成border, 調(diào)整border-radius參數(shù)即可. 接下來(lái)給大家看一下我用css畫(huà)的一個(gè)圖形,  各位可以參考學(xué)習(xí)一下:

如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)

當(dāng)然使用相同的原理我們可以實(shí)現(xiàn)更多有意思的圖案, 筆者這里就不一一舉例了.回歸正題, 我們來(lái)看看水波動(dòng)畫(huà)的實(shí)現(xiàn)原理. 首先不規(guī)則動(dòng)畫(huà)我們實(shí)現(xiàn)了,  剩下的工作就是如何實(shí)現(xiàn)波浪和波浪動(dòng)畫(huà), 參考上面不規(guī)則圖形的實(shí)現(xiàn)方案, 波浪線的制作可以采用類似裁切來(lái)實(shí)現(xiàn), 如下:

如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)  

由上圖可以看出, 我們使用css的border-radius做一個(gè)矩形和一個(gè)圓角矩形, 使用transform來(lái)設(shè)置偏移和旋轉(zhuǎn),  就可以實(shí)現(xiàn)底部裁切后的曲面. 最后我們使用animation動(dòng)畫(huà)讓其運(yùn)動(dòng)來(lái)看看效果:

如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)

我們只需要優(yōu)化上面的動(dòng)畫(huà), 讓背景更柔和, 比如說(shuō)圓形, 容器溢出隱藏,  這樣就可以實(shí)現(xiàn)H5-Dooring編輯器 中的水波動(dòng)畫(huà)了, css源碼如下:

.dragPay {       position: absolute;       z-index: 99999;       left: 414px;       top: 156px;       width: 60px;       height: 60px;       border-radius: 50%;       border: 3px solid #20c961;       background: #ffffff;       overflow: hidden;       padding: 5px;       box-sizing: border-box; } .dragPay .wave {     position: relative;     left: -8px;     width: 60px;     height: 60px;     background-image: linear-gradient(-180deg, #8dec8a 13%, #70cf23 91%);     border-radius: 50%;     line-height: 60px;     text-align: center;     font-size: 32px;     cursor: pointer; } .dragPay .waveMask {     position: absolute;     width: 120px;     height: 120px;     top: 0;     left: 50%;     border-radius: 40%;     background-color: rgba(255, 255, 255, 0.9);     transform: translate(-50%, -82%) rotate(0);     animation: toRotate 10s linear -5s infinite;     z-index: 20;     pointer-events: none; } @keyframes toRotate {     50% {     transform: translate(-50%, -70%) rotate(180deg);     }     100% {     transform: translate(-50%, -70%) rotate(360deg);     } }

html結(jié)構(gòu)如下:

<div class="dragPay">     <div class="wave">       <span>??</span>     </div>     <div class="waveMask"></div> </div>

當(dāng)然我們可以使用偽元素來(lái)優(yōu)化dom結(jié)構(gòu)。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

文章名稱:如何使用純css實(shí)現(xiàn)水波動(dòng)畫(huà)
本文路徑:http://muchs.cn/article22/gdiscc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)外貿(mào)建站、網(wǎng)站制作網(wǎng)站改版、自適應(yīng)網(wǎng)站、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站