動畫使元素逐漸從一種樣式變?yōu)榱硪环N樣式。
您可以隨意更改任意數(shù)量的 CSS 屬性。
如需使用 CSS 動畫,您必須首先為動畫指定一些關(guān) 鍵幀。
關(guān)鍵幀包含元素在特定時間所擁有的樣式。
配置動畫 創(chuàng)建動畫序列,需要使用 animation 屬性或其子屬性,該屬性允許配置動畫時間、時長以及其他動畫細(xì)節(jié),但該屬性不能配置動畫的實(shí)際表現(xiàn),動畫的實(shí)際表現(xiàn)是由 @keyframes 規(guī)則實(shí)現(xiàn),具體情況參見 使用 keyframes 定義動畫序列 小節(jié)部分。 animation 的子屬性有: animation-delay ...
使用 keyframes 定義動畫序列 一旦完成動畫的時間設(shè)置,接下來就需要定義動畫的表現(xiàn)。 通過使用 @keyframes 建立兩個或兩個以上關(guān)鍵幀來實(shí)現(xiàn)。首先編寫我們想要的動畫
要創(chuàng)建 CSS 動畫,您首先需要了解 @keyframes 規(guī)則,@keyframes 規(guī)則用來定義動畫各個階段的屬性值
瀏覽器會對CSS3動畫做一些優(yōu)化,導(dǎo)致CSS3動畫性能上稍有優(yōu)勢(新建一個圖層來跑動畫)。
CSS3動畫的代碼相對簡單。 CSS缺點(diǎn):
動畫控制上不夠靈活。
兼容性不佳
部分動畫無法實(shí)現(xiàn)(視差效果、滾動動畫)
關(guān)鍵幀有兩種寫法:
@keyframes
dot {
from {
background-color: red;}
to {
background-color: yellow;}
}
上下效果同等。
@keyframes
dot {
0% {
background-color: red;}
100% {
background-color: yellow;}
}
接下來編寫完動畫,需要使用該動畫。
animation-name:設(shè)置需要綁定到元素的動畫名稱;
animation-duration:設(shè)置完成動畫所需要花費(fèi)的時間,單位為秒或毫秒,默認(rèn)為 0;
animation-timing-function:設(shè)置動畫的速度曲線,默認(rèn)為 ease;
animation-fill-mode:設(shè)置當(dāng)動畫不播放時(動畫播放完或延遲播放時)的狀態(tài);
animation-delay:設(shè)置動畫開始之前的延遲時間,默認(rèn)為 0;
animation-iteration-count:設(shè)置動畫被播放的次數(shù),默認(rèn)為 1;
animation-direction:設(shè)置是否在下一周期逆向播放動畫,默認(rèn)為 normal;
animation-play-state:設(shè)置動畫是正在運(yùn)行還是暫停,默認(rèn)是 running;
animation:所有動畫屬性的簡寫屬性。
- CSS的形體變化 —— Transform API 只能轉(zhuǎn)換由盒模型定位的元素。
- Translate(移動)
- Scale(縮放)
- Rotate(旋轉(zhuǎn))
- Skew(傾斜)
如沒特殊注明,文章均為方維網(wǎng)絡(luò)原創(chuàng),轉(zhuǎn)載請注明來自http://m.oulysa.com/news/6697.html