您好,登錄后才能下訂單哦!
CSS3 動畫
雖然transition在一定的時間內可以實現元素的初始狀態在指定的時間范圍過渡最終狀態, 模擬一種過渡動畫效果,但它的功能是非常有限的。 因此,CSS3 新增了一個動畫屬性animation。與過渡屬性transition屬性不同的是,CSS3 的animation屬性可以像Flash制作動畫一樣,通過關鍵幀控制動畫的每一步, 實現更為復雜的動畫效果。
CSS3中通過animation實現動畫和transition實現動畫非常類似,都是通過改變元素的屬性值來實現動畫效果的。
它們的區別主要在于:使用 transition屬性只能通過指定屬性的初始狀態和結束狀態,然后在兩個狀態之間進行平滑過渡的方式來實現動畫。
而animation實現動畫效果主要由兩個部分組成:
1). 通過類似Flash動畫中的關鍵幀來聲明一個動畫;
2). 在animation屬性中調用關鍵幀聲明的動畫,從而實現一個更為復雜的動畫效果。
CSS3動畫屬性animation和CSS3的transition屬性一樣是一個復合屬性,它包含了8個屬性:
animation-name,主要用來指定一個關鍵幀動畫的名字,這個動畫名必須對應一個@keyframes規則。CSS加載時會應用animation-name指定的動畫, 從而執行動畫。
animation-duration,主要用來設置動畫播放所需時間,一般以秒為單位。
animation-timing- function主要用來設置動畫的播放方式,與transition-timing-function類似。
http:/ /www.iis7.com/b/wzjk/
animation-delay、主要用來指定動畫開始時間,一般以秒為單位。
animation-iteration- count、主要用來指定動畫播放的循環次數。
animation-direction、主要用來指定動畫的播放方向。
animation-play- state,主要用來控制動畫的播放狀態。
animation-fill- mode,主要用來設置動畫的時間外屬性。:關鍵幀
在CSS3中,把@keyframes稱為關鍵幀
br/>:關鍵幀
在CSS3中,把@keyframes稱為關鍵幀
transition制作一個簡單的動畫效果時,包括了元素的初始屬性和最終屬性,一個開始執行動作時間和一個延遲動作時間以及一個動作變換速率, 其實這些值都是一個中間值,如果要控制得更細一些,比如說要第一個時間段執行什么動作,第二個時間段執行什么動作(換到Flash制作動畫中來說,就是第一幀要執行什么動作,第二幀執行什么動作), 這樣用transition 就很難實現了,此時也需要一個“ 關鍵 幀”來控制。 在CSS3中就是通過@keyframes屬性來實現這樣的效果的。@keyframes的語法:
br/>@keyframes的語法:
CSS中為元素應用動畫:
要在CSS中為元素應用動畫, 首先要創建一個已命名的動畫,然后將它附加到該元素屬性聲明塊中的一個元素上。 動畫本身并不執行任何操作; 為了向元素應用動畫,需要將動畫與元素關聯起來。這個要創建的動畫,必須使用@keyframes來聲明(或者對于當前的Webkit實現,使用@-webkit-keyframes),后跟所選擇的名稱,該名稱主要用于對動畫的聲明作用,然后指定關鍵幀。
:CSS3動畫8個子屬性詳解
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。