欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

css3中用animation的steps屬性制作幀動(dòng)畫

  發(fā)布時(shí)間:2019-04-25 15:52:43   作者:佚名   我要評(píng)論
這篇文章主要介紹了css中用animation的steps屬性制作幀動(dòng)畫,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

  昨天火急火燎地接到一個(gè)任務(wù),說是要做一個(gè)擲骰子的游戲,關(guān)于擲骰子期間的過渡動(dòng)畫,我本來是想用css 3d制作一個(gè)立體的骰子,然后叫UI給6張平面圖貼上去。再用translate3d來操作。然而UI考慮得十分周到,直接就給了我一個(gè)雪碧圖,并告訴我在photoshop中可以用幀動(dòng)畫來播放幾張圖片,達(dá)到類似gif的效果,程序上實(shí)現(xiàn)也大抵如此吧。

  臥槽真是個(gè)神奇的UI boy。

  于是我順著他的思路,用上了animation在timing-function中的steps屬性。

  先來看看UI給的圖吧,是這樣的:(注:圖片寬度1200px)

  

  如果要播放這張圖片的話,很明顯是分為五個(gè)幀,然后定義一個(gè)動(dòng)畫,background-position從(0,0)到(-圖片的寬度,0)。首先要明白background-position的數(shù)值指的是背景圖的左上角頂點(diǎn)到容器左上角頂點(diǎn)的x,y距離。x,y正數(shù)值越大,背景圖越向右下角偏移。

  所以動(dòng)畫的代碼如下:

  

  我們先來播放一下看看效果,設(shè)置animation:spinning 2s linear infinite,效果如下:

  

  可以看到是從左到右依次播放:2,3,4,5,6,2,3,4,5,6....。類似跑馬燈的效果,既然說到這里就順便提一下alternate,眾所周知infinite linear定義的是0 -> 100 ->0 -> 100 -> 0 -> 100......(始終正向)。而infinite alternate定義的是0 -> 100 -> 100 ->0 -> 0 -> 100......(一下正向一下反向)。修改animation:spinning 2s alternate infinite,效果如下:

  

  但是這都不是我們需要的效果,因?yàn)閹瑒?dòng)畫的關(guān)鍵在于“瞬變”。在animation的timing-function中,有一個(gè)steps(n)屬性。表示將動(dòng)畫分為n幀。比如說,這里我們定義animation:spinning 2s steps(5) infinite。它在這個(gè)例子中表示的效果如下:

  

  在0~400ms時(shí),position:0 0;400ms~800ms,position:-240px 0。800ms~1200ms,position:-480px 0,以此類推。需要注意的是,比如400ms時(shí)position為0 0,在401ms時(shí)position就突變成-240px 0,即是說position是瞬變的。這個(gè)位置變化沒有過渡效果,這就是steps的特點(diǎn):階躍性。

  此時(shí)效果如下:

  

  400ms一幀當(dāng)然太慢了,我們把時(shí)間適當(dāng)壓縮一下。比如總動(dòng)畫時(shí)長為300ms,那就是60ms一幀,分5幀播放完,這樣看起來就會(huì)流暢不少。最終效果如下:

 

總結(jié)

以上所述是小編給大家介紹的css3中用animation的steps屬性制作幀動(dòng)畫 ,希望對(duì)大家有所幫助!

相關(guān)文章

  • CSS3動(dòng)畫之利用requestAnimationFrame觸發(fā)重新播放功能

    這篇文章主要介紹了利用requestAnimationFrame重新播放(觸發(fā))CSS3動(dòng)畫,代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-11
  • CSS3 animation – steps 函數(shù)詳解

    本文通過實(shí)例代碼給大家介紹了CSS3 animation – steps 函數(shù),代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2019-08-30
  • 10分鐘入門CSS3 Animation

    本篇介紹的animation屬性和傳統(tǒng)的動(dòng)畫制作一樣,能控制幀的每一步,制作出更強(qiáng)大的動(dòng)畫效果。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看
    2018-12-25
  • css3的動(dòng)畫特效之動(dòng)畫序列(animation)

    這篇文章主要介紹了css3的動(dòng)畫特效之動(dòng)畫序列(animation) 的相關(guān)資料,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-12-22
  • CSS3中Animation動(dòng)畫屬性用法詳解

    這篇文章主要為大家詳細(xì)介紹了CSS3中Animation動(dòng)畫屬性用法,教大家如何使用animation動(dòng)畫,感興趣的小伙伴們可以參考一下
    2016-07-04
  • CSS3中animation實(shí)現(xiàn)流光按鈕效果

    這篇文章主要介紹了CSS3中animation實(shí)現(xiàn)流光按鈕效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì)對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-21

最新評(píng)論