利用css3-animation實(shí)現(xiàn)逐幀動(dòng)畫(huà)效果

本文分享了用css3-animation來(lái)制作逐幀動(dòng)畫(huà)的實(shí)現(xiàn)方法,供大家參考,具體內(nèi)容如下
常見(jiàn)用法:
- :hover{ animation:mymove 4s ease-out 1s backwards;}
- @-webkit-keyframes mymove /*Safari and Chrome*/ { from {left:0px;} to {left:200px;} }
- 復(fù)制代碼
- 解釋?zhuān)?
- mymove :keyframes的名稱(chēng);
- 4s:動(dòng)畫(huà)的總時(shí)間;
- ease-out: 快結(jié)束的時(shí)候慢下來(lái);
- 1s:停頓1秒后開(kāi)始動(dòng)畫(huà);
- backwards:動(dòng)畫(huà)結(jié)束后回到原點(diǎn)
- 默認(rèn):播放一次
- 或者
- transition:left 4s ease-out
- :hover{left:200px}
兼容主流瀏覽器:
- .test{
- -webkit-animation: < 各種屬性值 >;
- -moz-animation: < 各種屬性值 >;
- -o-animation: < 各種屬性值 >;
- animation: < 各種屬性值 >;
- }
animation-name,規(guī)定要綁定的keyframes的名稱(chēng),隨便你取,不過(guò)為了日后維護(hù)的方便,建議取一個(gè)跟動(dòng)作相關(guān)名稱(chēng)相近的名稱(chēng)比較好。比如要我們要綁定一個(gè)跑的動(dòng)作,那么可以命名為run。
time,這里有兩個(gè)時(shí)間,前面一個(gè)是規(guī)定完成這個(gè)動(dòng)畫(huà)所需要的時(shí)間,全稱(chēng)叫animation-duration,第二個(gè)time為動(dòng)畫(huà)延遲開(kāi)始播放的時(shí)間,全稱(chēng)叫animation-delay,這兩個(gè)數(shù)值可以用秒’s’也可以用微秒’ms’來(lái)寫(xiě),1000ms=1s,這個(gè)不用一一介紹。
animation-timing-function,規(guī)定動(dòng)畫(huà)的運(yùn)動(dòng)曲線(xiàn),這里有9個(gè)值,分別是ease| linear | ease-in | ease-out | ease-in-out | step-start | step-end | steps([, [ start | end ] ]?) | cubic-bezier(x1, y1, x2, y2)
ease:動(dòng)畫(huà)緩慢開(kāi)始,接著加速,最后減慢,默認(rèn)值;
linear:動(dòng)畫(huà)從頭到尾的速度是相同的;
ease-in:以低速開(kāi)始;
ease-out:以低速結(jié)束;
ease-in-out:動(dòng)畫(huà)以低速開(kāi)始和結(jié)束;
效果一樣 (按步數(shù))steps
- .test1{
- background:url(http://img.xiaoho.com/2014/12/test.png) no-repeat 0 0;
- -webkit-animation:run 350ms steps(1) infinite 0s;}
- @-webkit-keyframes run {
- 0% {
- background-position:0;
- }
- 20% {
- background-position:-90px 0;
- }
- 40% {
- background-position:-180px 0;
- }
- 60% {
- background-position:-270px 0;
- }
- 80% {
- background-position:-360px 0;
- }
- 100% {
- background-position:-450px 0;
- }
- }
- .test2{
- background:url(http://img.xiaoho.com/2014/12/test.png) no-repeat 0 0;
- -webkit-animation:run 350ms steps(5) infinite 0s;}
- @-webkit-keyframes run {
- 100% {
- background-position:-450px 0;
- }
- }
animation-iteration-count,動(dòng)畫(huà)播放次數(shù),默認(rèn)值為1,infinite為無(wú)限制,假如設(shè)置為無(wú)限制,那么動(dòng)畫(huà)就會(huì)不停地播放。
animation-direction,規(guī)定動(dòng)畫(huà)是否反方向運(yùn)動(dòng)。
= normal | reverse | alternate | alternate-reverse
第一個(gè)值是正常轉(zhuǎn)動(dòng)播放,默認(rèn)值,reverse為反向轉(zhuǎn)動(dòng),alternate一開(kāi)始正常轉(zhuǎn)動(dòng),播放完一次之后接著再反向轉(zhuǎn)動(dòng),假如設(shè)置animation-iteration-count:1則該值無(wú)效,alternate-reverse一開(kāi)始為反向轉(zhuǎn)動(dòng),播完一次之后按照回歸正常轉(zhuǎn)動(dòng),交替轉(zhuǎn)動(dòng),設(shè)置count為1,則該值無(wú)效。
animation-play-state,定義動(dòng)畫(huà)是否運(yùn)行或暫停,這是后來(lái)新增的屬性,有兩個(gè)屬性值分別是running和paused。默認(rèn)值為normal,動(dòng)畫(huà)正常播放。假如是為paused,那么動(dòng)畫(huà)暫停。假如一個(gè)動(dòng)畫(huà)一開(kāi)始為運(yùn)動(dòng),那么假如設(shè)置paused那么該動(dòng)畫(huà)暫停,假如再設(shè)置running,那么該動(dòng)畫(huà)會(huì)從剛才暫停處開(kāi)始運(yùn)動(dòng)
animation-fill-mode,定義動(dòng)畫(huà)播放時(shí)間之外的狀態(tài),顧名思義,要么就是在動(dòng)畫(huà)播放完了之后給它一個(gè)狀態(tài) animation-fill-mode : none | forwards | backwards | both; none,播放完之后不改變默認(rèn)行為,默認(rèn)值,forwards則是停在動(dòng)畫(huà)最后的的那個(gè)畫(huà)面,backwards則是回調(diào)到動(dòng)畫(huà)最開(kāi)始出現(xiàn)的畫(huà)面,both則應(yīng)用為動(dòng)畫(huà)結(jié)束或開(kāi)始的狀態(tài)。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。
原文:http://www.cnblogs.com/woloveprogram/p/5258042.html
相關(guān)文章
css3的動(dòng)畫(huà)特效之動(dòng)畫(huà)序列(animation)
這篇文章主要介紹了css3的動(dòng)畫(huà)特效之動(dòng)畫(huà)序列(animation) 的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-22CSS3與動(dòng)畫(huà)有關(guān)的屬性transition、animation、transform對(duì)比(史上最全
這篇文章主要介紹了CSS3與動(dòng)畫(huà)有關(guān)的屬性transition、animation、transform對(duì)比,通過(guò)瀏覽器兼容性,用法和對(duì)比更深刻的展示了彼此之間的異同,具體操作步驟大家可查看下文2017-08-18CSS3 animation實(shí)現(xiàn)簡(jiǎn)易幻燈片輪播特效
這篇文章主要為大家詳細(xì)介紹了CSS3 animation實(shí)現(xiàn)簡(jiǎn)易幻燈片輪播特效,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-27CSS3中動(dòng)畫(huà)屬性transform、transition和animation屬性的區(qū)別
最近在項(xiàng)目中用到了CSS3中的動(dòng)畫(huà)屬性。無(wú)奈對(duì)于css3幾個(gè)新加的屬性不太熟悉,常常容易搞混。所以從網(wǎng)站研究了點(diǎn)資料,總結(jié)一下,方便有需要的朋友們可以參考學(xué)習(xí)。2016-09-25CSS3中Animation動(dòng)畫(huà)屬性用法詳解
這篇文章主要為大家詳細(xì)介紹了CSS3中Animation動(dòng)畫(huà)屬性用法,教大家如何使用animation動(dòng)畫(huà),感興趣的小伙伴們可以參考一下2016-07-04CSS3 animation實(shí)現(xiàn)逐幀動(dòng)畫(huà)效果
這篇文章主要介紹了CSS3 animation實(shí)現(xiàn)逐幀動(dòng)畫(huà)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-02CSS3中的Transition過(guò)度與Animation動(dòng)畫(huà)屬性使用要點(diǎn)
這篇文章主要介紹了CSS3中的Transition過(guò)度與Animation動(dòng)畫(huà)屬性使用要點(diǎn)Transition和Animation能被用來(lái)制作基本的頁(yè)面圖片動(dòng)態(tài)效果,當(dāng)然進(jìn)一步的控制還是需要JavaScript的2016-05-20- 這篇文章主要介紹了CSS3中Animation屬性的使用詳解,是CSS3入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-08-06
CSS3的transition和animation的用法實(shí)例介紹
transition用于設(shè)定一個(gè)元素的兩個(gè)狀態(tài),不同的狀態(tài)可以用偽類(lèi),下面與大家分享下CSS3的transition和animation的用法,需要的朋友可以參考下2014-08-20CSS3中利用animation屬性創(chuàng)建雪花飄落特效
在CSS3中我們可以使用animation屬性來(lái)創(chuàng)建復(fù)雜的動(dòng)畫(huà)效果,本文就要借助它實(shí)現(xiàn)雪花飄落特效,功能代碼如下,希望對(duì)大家學(xué)習(xí)css3有所幫助2014-05-14