css掩人耳目式海浪動(dòng)效??,這可能是最簡(jiǎn)單的實(shí)現(xiàn)方式了吧?

花里胡哨的canvas實(shí)現(xiàn)太過(guò)于繁瑣,這就是本文存在的意義.

效果圖

拆解

首先畫(huà)一個(gè)簡(jiǎn)單的盒子:


利用::before::after畫(huà)兩個(gè)圓角值(radius)不同的不規(guī)則圓形:

父元素設(shè)置overflow: hidden

最后加上animation動(dòng)畫(huà)讓兩個(gè)不規(guī)則圓形旋轉(zhuǎn)起來(lái)即可??

代碼

html

<div class="wave"></div>

scss

// 簡(jiǎn)單的盒子
.wave {
  position: relative;
  width: 150px;
  height: 150px;
  background-color: #5291e0;
  overflow: hidden;
  
  // 兩個(gè)不規(guī)則圓形(相對(duì)盒子進(jìn)行定位,距離底部距離則為波浪高度)
  &::before,
  &::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 15%;
    width: 500%;
    height: 500%;
    border-radius: 45%;
    background-color: #fff;
    transform: translateX(-50%); // 居中
    animation: rotate 15s linear infinite;
  }
  
  // 其中一個(gè)不規(guī)則圓形調(diào)整一下樣式,以便區(qū)分(或者調(diào)整animation的參數(shù)來(lái)區(qū)分)
  &::before {
    bottom: 10%;
    opacity: .5;
    border-radius: 47%;
  }
 }
}

// 旋轉(zhuǎn)動(dòng)畫(huà)
@keyframes rotate {
  from {
    transform: translateX(-50%) rotateZ(0deg);
  }

  to {
    transform: translateX(-50%) rotateZ(360deg);
  }
}

總結(jié)

效果圖第一眼看上去,讓"藍(lán)色"部分動(dòng)起來(lái),真的很難,所以采用逆向思維,直接操控"白色"部分再來(lái)個(gè)overflow: hidden成功偷梁換柱,舒服得很??

最后

本文到此結(jié)束,希望以上內(nèi)容對(duì)你有些許幫助,如若喜歡請(qǐng)記得點(diǎn)個(gè)關(guān)注哦 ??

image

微信公眾號(hào)「前端宇宙情報(bào)局」,將不定時(shí)更新最新、實(shí)用的前端技巧/技術(shù)性文章,歡迎關(guān)注,一起學(xué)習(xí) ??

最后編輯于
?著作權(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)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • display: none; 與 visibility: hidden; 的區(qū)別 聯(lián)系:它們都能讓元素不可見(jiàn) 區(qū)別...
    紋小艾閱讀 2,029評(píng)論 0 1
  • 1.行內(nèi)元素和塊級(jí)元素?img算什么?行內(nèi)元素怎么轉(zhuǎn)化為塊級(jí)元素? 行內(nèi)元素:和有他元素都在一行上,高度、行高及外...
    極樂(lè)君閱讀 2,607評(píng)論 0 20
  • 在認(rèn)識(shí)了基本css后,我們今天再來(lái)講解幾個(gè)屬性、選擇器,然后再看看css盒子模型,以及一些問(wèn)題。 css屬性進(jìn)擊 ...
    小白李呆呆閱讀 186評(píng)論 0 0
  • 本文介紹有關(guān)css的一些技巧以及一些比較另類的用法,有些情景完全可以避開(kāi)使用Javascript,單純的css就可...
    聰明的湯姆閱讀 1,718評(píng)論 1 30
  • 古來(lái)癡情人,今有莫非語(yǔ)。 有人跌跌撞撞,有人順風(fēng)順?biāo)?。有人顛沛流離,有人衣錦還鄉(xiāng)。我知道每個(gè)人的生活千差萬(wàn)別,每個(gè)...
    海蘭櫻閱讀 366評(píng)論 0 1

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