您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關使用純CSS實現冰棍動畫效果的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
https://github.com/comehope/front-end-daily-challenges
定義 dom,容器中包含 2 個元素:
<div class="ice-lolly"> <div class="flavors"></div> <div class="stick"></div> </div>
居中顯示:
body { margin: 0; height: 100vh; display: flex; align-items: center; justify-content: center; background-color: darkslategray; }
繪制出冰棍的外形:
.flavors { width: 19em; height: 26em; font-size: 10px; border-radius: 8em 8em 1em 1em; }
給冰棍上色:
.flavors { position: relative; overflow: hidden; } .flavors::before { content: ''; position: absolute; width: 140%; height: 120%; background: linear-gradient( hotpink 0%, hotpink 25%, deepskyblue 25%, deepskyblue 50%, gold 50%, gold 75%, lightgreen 75%, lightgreen 100%); z-index: -1; left: -20%; transform: rotate(-25deg); }
來一點光照效果:
.flavors::after { content: ''; position: absolute; width: 2em; height: 17em; background-color: rgba(255, 255, 255, 0.5); left: 2em; bottom: 2em; border-radius: 1em; }
畫出冰棍筷子:
.stick { position: relative; width: 6em; height: 8em; background-color: sandybrown; left: calc(50% - 6em / 2); border-radius: 0 0 3em 3em; }
給冰棍筷子加一點陰影,增加立體感:
.stick::after { content: ''; position: absolute; width: inherit; height: 2.5em; background-color: sienna; }
讓冰棍的色彩滾動起來:
.flavors::before { animation: moving 100s linear infinite; } @keyframes moving { to { background-position: 0 1000vh; } }
最后,增加交互效果,當鼠標懸停時才播放動畫:
.flavors::before { animation-play-state: paused; } .ice-lolly:hover .flavors::before { animation-play-state: running; }
感謝各位的閱讀!關于使用純CSS實現冰棍動畫效果的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。