一 、GIF圖片
GIF圖就直接貼上圖片就好了,使用非常簡單,但GIF圖有時(shí)出現(xiàn)問題是沒辦法控制的,比如常見的GIF圖的閃爍現(xiàn)象。
二 、SVG
SVG動(dòng)畫由SVG元素內(nèi)部的元素屬性控制,一般通過一下幾個(gè)元素控制:
用于控制動(dòng)畫延時(shí)
對(duì)屬性的連續(xù)改變進(jìn)行控制
顏色變化,但用就能控制
控制如縮放、旋轉(zhuǎn)等幾何變化
控制SVG內(nèi)元素的移動(dòng)路徑
三 、css animation
animation 算是真正意義上的CSS3動(dòng)畫。通過對(duì)關(guān)鍵幀和循環(huán)次數(shù)的控制,頁面標(biāo)簽元素會(huì)根據(jù)設(shè)定好的樣式改變進(jìn)行平滑過渡。而且關(guān)鍵幀狀態(tài)的控制是通過百分比來控制的。
四 、CSS3 transition
transition是過度動(dòng)畫。但是transition并不能實(shí)現(xiàn)獨(dú)立的動(dòng)畫,只能在某個(gè)標(biāo)簽元素樣式或狀態(tài)改變時(shí)進(jìn)行平滑的動(dòng)畫效果過渡,而不是馬上改變。
五 、requestAnimationFrame
requestAnimationFrame是另一種Web API,原理與setTimeout和setInterval類似,都是通過javascript持續(xù)循環(huán)的方法調(diào)用來觸發(fā)動(dòng)畫動(dòng)作。但是requestAnimationFrame是瀏覽器針對(duì)動(dòng)畫專門優(yōu)化形成的APi
六 、Canvas
setInterval或setTimeout
javascript 函數(shù)來持續(xù)調(diào)用改變某個(gè)元素的CSS樣式以達(dá)到元素樣式變化的效果
七 、three.js