日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > CSS >内容正文

CSS

CSS3 帧动画分段,CSS3 animation实现逐帧动画效果

發布時間:2025/3/17 CSS 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CSS3 帧动画分段,CSS3 animation实现逐帧动画效果 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

css3里面的animation屬性非常強大,但是自己用的比較少,最近有次面試就剛好被問到了,趁現在有時間就對animation做一個小總結。同時實現一個逐幀動畫的demo作為練習

animation屬性一覽

因為animation屬性比較多,然后在w3c上看有點蛋疼,干脆也做了一份導圖,以后想查看,就一目了然了

使用animation實現逐幀動畫

熟悉了animation的屬性之后,得找個簡單的小項目實現下,逐幀動畫好有意思,先跑一個滿足下自己

思路很簡單,就是給元素一個雪碧圖的背景,然后添加的幀動畫更改background-position,關鍵代碼:CSS Code復制內容到剪貼板@keyframes?run{

from{

background-position:?0?0;

}

to{

background-position:?-1540px0?;

}

}

div{

width:140px;

height:140px;

background:url(run.png)?;

animation-name:run;

animation-duration:1s;

animation-iteration-count:infinite;

}

但是跑起來后我們發現,每幀動畫之間幀動畫都是滑動,并不是我們要的效果,為什么呢?

原來animation默認以ease方式過渡,它會在每個關鍵幀之間插入補間動畫,所以動畫效果是連貫性的

知道原因就好辦了,解決思路就是:CSS Code復制內容到剪貼板@keyframes?run{

0%,?8%{/*動作一*/}

9.2%,?17.2%{/*動作二*/}

...

}

step1:動作之間停留8幀,0%設置動作一,動作一結束在8%

step2:動作之間過渡1.2幀,9.2%設置動作二,動作二結束在17.2%

完整代碼:XML/HTML Code復制內容到剪貼板html>

css3逐幀動畫

@keyframes?run{

0%,?8%{??background-position:?0?0;??}

9.2%,?17.2%{??background-position:?-140px?0;??}

18.4%,?26.4%{??background-position:?-280px?0?;??}

27.6%,?35.6%{??background-position:?-420px?0?;??}

36.8%,?44.8%{??background-position:?-560px?0?;??}

46%,?54%{??background-position:?-700px?0?;??}

55.2%,?63.2%{??background-position:?-840px?0?;??}

64.4%,?72.4%{??background-position:?-980px?0?;??}

73.6%,?81.6%{??background-position:?-1120px?0?;??}

82.8%,?90.8%{??background-position:?-1400px?0?;??}

92%,?100%{??background-position:?-1540px?0?;??}

}

@-webkit-keyframes?run{

0%,?8%{??background-position:?0?0;??}

9.2%,?17.2%{??background-position:?-140px?0;??}

18.4%,?26.4%{??background-position:?-280px?0?;??}

27.6%,?35.6%{??background-position:?-420px?0?;??}

36.8%,?44.8%{??background-position:?-560px?0?;??}

46%,?54%{??background-position:?-700px?0?;??}

55.2%,?63.2%{??background-position:?-840px?0?;??}

64.4%,?72.4%{??background-position:?-980px?0?;??}

73.6%,?81.6%{??background-position:?-1120px?0?;??}

82.8%,?90.8%{??background-position:?-1400px?0?;??}

92%,?100%{??background-position:?-1540px?0?;??}

}

div{

width:140px;

height:140px;

background:?url(blog/754767/201606/754767-20160601000042992-1734972084.png)?;

animation:run?1s?infinite;

-webkit-animation:run?1s?infinite;

animation-fill-mode?:?backwards;

-webkit-animation-fill-mode?:?backwards;

}

總結

以上是生活随笔為你收集整理的CSS3 帧动画分段,CSS3 animation实现逐帧动画效果的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。