您好,登錄后才能下訂單哦!
這篇文章主要介紹了CSS3中transition, transform 和 animation指的是什么,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
transition
transition允許css的屬性值在一定的時(shí)間區(qū)間內(nèi)平滑地過渡,語法如下:
transition : transition-property transition-duration transition-timing-function transition-delay [, ...]
transition的相關(guān)屬性:
transition-property:用來指定執(zhí)行transition效果的屬性,可以為 none,all或者特定的屬性。
transition-duration:動畫執(zhí)行的持續(xù)時(shí)間,單位為s(秒)或者 ms(毫秒)。
transition-timing-function:變換速率效果,可選值為ease|linear|ease-in|ease-out|ease-in-out|cubic-bezier(自定義時(shí)間曲線)。
transition-delay:用來指定動畫開始執(zhí)行的時(shí)間,取值同transition-duration,但是可以為負(fù)數(shù)。
transform
transform 分為2D 和 3D,這里暫時(shí)只介紹比較常用的2D transform,其主要包含以下幾種變換:旋轉(zhuǎn)rotate、扭曲skew、縮放scale和移動translate以及矩陣變形matrix,語法如下:
transform: rotate | scale | skew | translate |matrix;
transform的相關(guān)屬性:
rotate 旋轉(zhuǎn)
rotate 的單位是deg 度,正數(shù)表示順時(shí)針旋轉(zhuǎn),負(fù)數(shù)表示逆時(shí)針旋轉(zhuǎn)。
scale 縮放
scale 的取值范圍是0~n,小于1時(shí)表示縮小,反之表示放大。例如scale(0.5, 2)表示水平方向縮小1倍,垂直方向放大1倍, 另外,也可以通過scaleX或者scaleY對一個(gè)方向進(jìn)行設(shè)置。
skew 扭曲
skew 的單位跟rotate一樣都是deg 度。例如 skew(30deg, 10deg)表示水平方向傾斜30度,垂直方向傾斜10度。
translate 偏移
偏移同樣包括水平偏移和垂直偏移。translate(x,y)水平方向和垂直方向同時(shí)移動(也就是X軸和Y軸同時(shí)移動);translateX(x)僅水平方向移動(X軸移動);translateY(Y)僅垂直方向移動(Y軸移動)。
animation
CSS3 中的 animation 是通過一個(gè)叫Keyframes 關(guān)鍵幀的玩意來控制的,他的命名是由"@keyframes"開頭,后面緊接著是這個(gè)“動畫的名稱”加上一對花括號“{}”,括號中就是一些不同時(shí)間段樣式規(guī)則,有點(diǎn)像我們css的樣式寫法一樣。對于一個(gè)"@keyframes"中的樣式規(guī)則是由多個(gè)百分比構(gòu)成的,如“0%”到"100%"之間,語法如下:
@keyframes IDENT { from { Properties: Properties value; } Percentage { Properties: Properties value; } to { Properties: Properties value; } } 或者全部寫成百分比的形式: @keyframes IDENT { 0% { Properties: Properties value; } Percentage { Properties: Properties value; } 100% { Properties: Properties value; } }
animation和transition一樣有自己相對應(yīng)的屬性,那么在animation主要有以下幾種:animation-name;animation-duration;animation-timing-function;animation-delay;animation-iteration-count;animation-direction;animation-play-state。下面對其中的一些屬性進(jìn)行解釋:
animation-name 關(guān)鍵幀名:
用來定義一個(gè)動畫的名稱,也就是由前面的keyframes創(chuàng)建的動畫名,默認(rèn)值為none,當(dāng)值為none時(shí),將沒有任何動畫效果。如果我們要同時(shí)附幾個(gè)animation給一個(gè)元素,只要用逗號,隔開即可。
animation-iteration-count 動畫循環(huán)次數(shù):
默認(rèn)為1,如果要進(jìn)行無限循環(huán),只要設(shè)為infinite即可。
animation-direction 動畫播放的方向:
其只有兩個(gè)值,默認(rèn)值為normal,如果設(shè)置為normal時(shí),動畫的每次循環(huán)都是向前播放;另一個(gè)值是alternate,他的作用是,動畫播放在第偶數(shù)次向前播放,第奇數(shù)次向反方向播放。
animation-play-state 播放狀態(tài):
其主要有兩個(gè)值,running和paused,其中running為默認(rèn)值。可以通過paused將正在播放的動畫停下了,也可以通過running將暫停的動畫重新播放。這個(gè)屬性不常用。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享CSS3中transition, transform 和 animation指的是什么內(nèi)容對大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,遇到問題就找億速云,詳細(xì)的解決方法等著你來學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。