CSS3的顏色漸變效果的示例代碼

在animate.css尋找自己想要的動態(tài)效果,看到標題Animate.css和按鈕Animate it的顏色在逐漸變化,覺得蠻有趣的,把控制變化的相關(guān)代碼扒了下來,自己分析實現(xiàn)一波。
一開始認為使用了js控制顏色逐漸變化,看了看js文件,除了jQuery,就只有一小段用來DOM操作添加更改class的代碼??刂祁伾兓豢赡茉谶@里。聯(lián)想到animate庫只用css來控制動畫效果,那多半在css文件里。
變化的兩個部分HTML和CSS分別如下
<h1 class="site__title mega">Animate.css</h1> .site__title { color: #f35626; background-image: -webkit-linear-gradient(92deg,#f35626,#feab3a); -webkit-background-clip: text; -webkit-text-fill-color: transparent; -webkit-animation: hue 60s infinite linear; }
<button class="butt js--triggerAnimation">Animate it</button> .butt { border: 2px solid #f35626; line-height: 1.375; padding-left: 1.5rem; padding-right: 1.5rem; font-weight: 700; color: #f35626; cursor: pointer; -webkit-animation: hue 60s infinite linear; }
以及一段很重要的代碼
@-webkit-keyframes hue { from { -webkit-filter: hue-rotate(0deg); } to { -webkit-filter: hue-rotate(-360deg); } }
重點部分就在于-webkit-animation
,實際上animate庫基本都是用的這種方式實現(xiàn)各種動畫的。
-webkit-animation: hue 60s infinite linear;
這里定義了一個名為hue的動畫名,第二個參數(shù)設置動畫持續(xù)時間為60s,第三個指定動畫播放次數(shù)無限次,第四個設置速度變化(從頭到尾速度相同)。
CSS動畫也是采用的關(guān)鍵幀的方法,下面的那一段就是在定義頭尾的關(guān)鍵幀,讓這個動畫真正的動起來!
from { ... } to { ... }
就是說從開頭(0%)到結(jié)尾(100%)分別是什么狀態(tài)!再結(jié)合-webkit-animation
第四個參數(shù)的速度變化,讓他更合理的動起來!
-webkit-filter我也不知道什么意思,查查W3C怎么講的吧。
filter 屬性定義了元素(通常是<img>
)的可視效果(例如:模糊與飽和度)。
用來調(diào)整可視效果?不明覺厲。再看看屬性hue-rotate()是什么意思:
給圖像應用色相旋轉(zhuǎn)。"angle"一值設定圖像會被調(diào)整的色環(huán)角度值。值為0deg,則圖像無變化。若值未設置,默認值是0deg。該值雖然沒有最大值,超過360deg的值相當于又繞一圈。
色相旋轉(zhuǎn)??懂了好像又沒懂?作為前端工程師,基本的色彩原理還是要知道的:
這就是色相環(huán),這里是24種代表顏色,實際在屏幕上可以顯示的RGB顏色有16萬種。就是說,上面的顏色變化,在一分鐘內(nèi)有16萬種變化……
上面可以很明顯的知道這是一個圓環(huán),hue-rotate()就定義了當前顏色在這個圓環(huán)上的偏轉(zhuǎn)角度。
顏色變化大概就是這么多了,現(xiàn)在自己實現(xiàn)一下吧:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style> .title{ color: #48c0c0; -webkit-animation: hue 5s infinite linear; } @keyframes hue { from { -webkit-filter: hue-rotate(0deg); } to { -webkit-filter: hue-rotate(360deg); } } </style> </head> <body> <h1 class="title">顏色漸變動畫</h1> </body> </html>
最終的效果:
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
- 是一段基于純CSS3實現(xiàn)的背景顏色漸變動畫效果代碼,適用于網(wǎng)頁動態(tài)背景特效,歡迎有興趣的朋友前來下載使用2019-11-29
- 在web前端開發(fā)過程中,UI設計師經(jīng)常會設計一些帶漸變文字的設計圖,在以前我們只能用png的圖片來代替文字,今天小編給大家?guī)砹薱ss實現(xiàn)文字顏色漸變的三種方法,一起看看2018-11-22
CSS3 background-image顏色漸變的實現(xiàn)代碼
這篇文章主要介紹了CSS3 background-image顏色漸變的實現(xiàn)代碼的相關(guān)資料,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-09-13- 這是一款由腳本之家翻譯自國外網(wǎng)站的在線CSS工具,可在線調(diào)整CSS顏色與透明度漸變效果,用戶可通過本工具像操作PS一樣進行顏色的選擇與拖拽調(diào)整漸變效果,并且提供實時預覽2017-09-19
通過css3背景控制屬性+使用顏色過渡實現(xiàn)漸變效果
這篇文章主要介紹了css3神奇的背景控制屬性+使用顏色過渡實現(xiàn)漂亮的漸變效果,非常不錯,本文通過實例代碼效果圖展示的非常詳細,需要的朋友可以參考下2020-02-03