15.HTML中的觸發動畫和主動動畫

HTML中的觸發動畫和主動動畫

觸發式動畫

常用觸發動作
1:鼠標懸浮(:hover)
2:選項選中(:checked)
3:輸入框點擊(:active)
… …

觸發式(過渡)動畫原理之動畫參數

過渡動畫時間:transition-duration。

定義一個動畫從第一幀到最後一幀的動畫時間,瀏覽器會根據該時間生成對應數量的中間幀數
例:
1:transition-duration:0.5s; 幀數=0.5s60幀/s=30幀
2:transition-duration:5s; 幀數=5s
60幀/s=300幀

過渡動畫延遲:transition-delay

定義動畫從觸發動作執行的一瞬間,延遲多長時間開始展示動畫,默認延遲爲0,即動作一執行立馬就展示動畫

例:
1:transition-delay:1s; 那麼動畫會在動作執行的1s後開始執行

過渡動畫時間函數: transition-timing-function

定義動畫從第一幀到最後一幀變化過程的速率變化

注:貝塞爾曲線 http://cubic-bezier.com

過渡動畫屬性: transition- property
定義元素是以某個屬性的變化作爲動畫的變化效果(如,寬度的變化, 高度的變化等), 第一幀和最後一幀代表的就是該屬性的值的變化(比如width的值從第一幀的100px,到最後一幀的500px)

複合寫法:過渡動畫綜合屬性:屬性名稱 過渡時間 過度動畫時間函數 動畫延遲時間;

定義元素是以某個屬性的變化作爲動畫的變化效果(如,寬度的變化, 高度的變化等), 第一幀和最後一幀代表的就是該屬性的值的變化。

主動式動畫

**主動式動畫:**由用戶自行創造關鍵幀,無需任何的動作觸發,與觸發式動畫的不同:用戶可以自行創造多個關鍵幀,用來更加精細化的控制動畫的整個過程

**動畫激活:**給需要展示用戶自行創造的主動式動畫的元素加上animation-name(動畫-名稱)樣式
主動式動畫名稱:animation-name:;

@keyframes onepiece{}/* 創造了名爲onepiece的動畫 */

div.animte{
animation-name:onepiece;/將該動畫賦予給div元素展示/
}

主動式動畫時間定義一個動畫從第一幀到最後一幀的動畫時間,瀏覽器會根據該時間生成對應數量的中間幀數:animation-duration

主動式動畫時間函數: animation-timing-function

時間函數:定義動畫從第一幀到最後一幀變化過程的速率變化(參照貝塞爾曲線)

主動式動畫時間延遲: animation-delay

定義動畫從觸發動作執行的一瞬間,延遲多長時間開始展示動畫,默認延遲爲0,即動作一執行立馬就展示動畫

主動式動畫播放次數: animation-iteration-count

規定動畫被播放的次數。默認是 1。
infinite:無限循環 。

主動動畫原理之多次播放動畫時的的正反方向

animation-direction:規定動畫是否在下一週期逆向地播放。

默認是 “normal”,每一次都是正向播放

revers爲負方向。

複合寫法:

animation: name duration timing-function delay iteration-count direction

動畫:名稱 時長 時間函數 延遲 次數 方向

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章