首頁 >web前端 >css教學 >css3中實作動畫有哪兩種方式

css3中實作動畫有哪兩種方式

王林
王林原創
2021-03-05 15:36:164251瀏覽

css3中實作動畫的兩種方式分別是:1、分別利用transition屬性和transform屬性來設定過渡和形狀;2、利用動畫屬性animation設定動畫效果。

css3中實作動畫有哪兩種方式

本文操作環境:windows10系統、css 3、thinkpad t480電腦。

1、利用transition設定過渡,加入transform設定形狀,形成動畫效果,如下:

.divadd {
     transition: All 0.4s ease-in-out;
         -webkit-transition: All 0.4s ease-in-out;
         -moz-transition: All 0.4s ease-in-out;
         -o-transition: All 0.4s ease-in-out;
 
     transform:rotate(360deg);
    -ms-transform:rotate(360deg); /* IE 9 */
    -webkit-transform:rotate(360deg); /* Safari and Chrome */
}

不過此種方式比較小眾,不易控制。

2、新增animation屬性,設定動畫效果,如下:

.a1 {
    position: absolute;
    animation: a1 3s;
    opacity: 0
}
@keyframes a1 {
    0% {left: 10px;opacity: 0}
    30% {left: 60px;background-color: pink;font-size:23px;opacity: 1}
    90% {left: 100px;background-color: red;opacity: 1}
    100% {left: 10px;opacity: 0}
} 

以上百分比後的方括號內可以新增各種屬性值,例如transform ratote、left。 。 。 。 。 。添加left top等定位不要忘記設定position absolute。

(學習影片分享:css影片教學

所有屬性有:

animation-name: myfirst;  //动画名称,用于animation引用
animation-duration: 5s;  //动画时长,
animation-timing-function: linear;
animation-delay: 2s;
animation-iteration-count: infinite;
animation-direction: alternate;
animation-play-state: running;
  • animation-fill-mode設定動畫結束後的狀態

  • none:預設值。不設定物件動畫以外的狀態,DOM未進行動畫前狀態

  • forwards:設定物件狀態為動畫結束時的狀態,100%或to時,當設定animation-direcdtion為reverse時動畫結束後顯示為keyframes第一幀

  • backwards:設定物件狀態為動畫開始時的狀態,(測試顯示DOM未進行動畫前狀態)

  • both:設定物件狀態為動畫結束或開始的狀態,結束時狀態優先

相關推薦:CSS教學

以上是css3中實作動畫有哪兩種方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn