亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

CSS3中的Transition過(guò)度與Animation動(dòng)畫屬性使用要點(diǎn)

  發(fā)布時(shí)間:2016-05-20 12:19:25   作者:佚名   我要評(píng)論
這篇文章主要介紹了CSS3中的Transition過(guò)度與Animation動(dòng)畫屬性使用要點(diǎn)Transition和Animation能被用來(lái)制作基本的頁(yè)面圖片動(dòng)態(tài)效果,當(dāng)然進(jìn)一步的控制還是需要JavaScript的幫助,需要的朋友可以參考下

Transition(過(guò)度)
Transition允許CSS的屬性值在一定的時(shí)間區(qū)間內(nèi)平滑地過(guò)渡。這種效果可以在鼠標(biāo)單擊、獲得焦點(diǎn)、被點(diǎn)擊或?qū)υ厝魏胃淖冎杏|發(fā),并圓滑地以動(dòng)畫效果改變CSS的屬性值,它的語(yǔ)法如下:

CSS Code復(fù)制內(nèi)容到剪貼板
  1. transition: property duration timing-function delay;   
  2. /*  
  3. property:執(zhí)行過(guò)渡的屬性  
  4. duration:執(zhí)行過(guò)渡的持續(xù)時(shí)間  
  5. timing-function:執(zhí)行過(guò)渡的速率模式  
  6. delay:延時(shí)多久執(zhí)行  
  7. */  

transition-property
可取值:

none
沒(méi)有屬性會(huì)獲得過(guò)渡效果。
all
所有屬性都將獲得過(guò)渡效果。
property
定義應(yīng)用過(guò)渡效果的 CSS 屬性名稱列表,列表以逗號(hào)分隔。

CSS Code復(fù)制內(nèi)容到剪貼板
  1. div{   
  2. transition-property:width;   
  3. -moz-transition-property: width;/* Firefox 4 */  
  4. -webkit-transition-property:width/* Safari 和 Chrome */  
  5. -o-transition-property:width;    
  6. /* Opera */}  

transition-duration
參數(shù)為時(shí)間,單位為s(秒)或者ms(毫秒),默認(rèn)就是0,回想一下如果只有transform屬性,是不是變換啪地一下完成了。

CSS Code復(fù)制內(nèi)容到剪貼板
  1. div{   
  2. transition-duration: 5s;   
  3. -moz-transition-duration: 5s; /* Firefox 4 */  
  4. -webkit-transition-duration: 5s; /* Safari 和 Chrome */  
  5. -o-transition-duration: 5s; /* Opera */}   

transition-timing-function

既然是動(dòng)畫,那么就有動(dòng)畫的運(yùn)行速率,不同的速度會(huì)產(chǎn)生不同的結(jié)果,以下是可取值。

ease:(逐漸變慢)默認(rèn)值,ease函數(shù)等同于貝塞爾曲線(0.25, 0.1, 0.25, 1.0).
linear:(勻速),linear 函數(shù)等同于貝塞爾曲線(0.0, 0.0, 1.0, 1.0).
ease-in:(加速),ease-in 函數(shù)等同于貝塞爾曲線(0.42, 0, 1.0, 1.0).
ease-out:(減速),ease-out 函數(shù)等同于貝塞爾曲線(0, 0, 0.58, 1.0).
ease-in-out:(加速然后減速),ease-in-out 函數(shù)等同于貝塞爾曲線(0.42, 0, 0.58, 1.0)
2016520122009291.png (491×167)

transition-delay
參數(shù)為時(shí)間,單位為s(秒)或者ms(毫秒),默認(rèn)就是0,也就是立即執(zhí)行,如果在多個(gè)動(dòng)畫直接有先后順序,那么它就會(huì)派上用場(chǎng)。

Animation(動(dòng)畫)
關(guān)鍵幀 Keyframe
實(shí)現(xiàn)自定義動(dòng)畫,通過(guò)對(duì)關(guān)鍵幀的設(shè)定來(lái)實(shí)現(xiàn),也就是規(guī)定從起始點(diǎn)(0%)到終點(diǎn)(100%)之間的具體節(jié)點(diǎn)上的動(dòng)畫樣式。就好比一個(gè)人起床,睜開眼睛(0%),站起來(lái)(10%),穿上衣(40%),穿褲子(80%),整理面容(100%),這樣子把每個(gè)節(jié)點(diǎn)串起來(lái)便是動(dòng)畫了。

再說(shuō)動(dòng)畫
動(dòng)畫,關(guān)鍵在于動(dòng)字,那么對(duì)于頁(yè)面上的元素來(lái)說(shuō),能發(fā)生變化的便是它的樣式屬性,比如用animation規(guī)定自定義動(dòng)畫,內(nèi)容為font-size從18px,變?yōu)?8px,這個(gè)便是動(dòng),加上其自身的屬性(它可以規(guī)定動(dòng)畫持續(xù)時(shí)間,運(yùn)動(dòng)形式等等),便可以呈現(xiàn)動(dòng)態(tài)的效果,而不是一瞬間的變化。

通常,transition要想實(shí)現(xiàn)動(dòng)畫通常需要由hover偽類來(lái)觸發(fā),否則在頁(yè)面加載的時(shí)候它已經(jīng)運(yùn)動(dòng)完畢,保持運(yùn)動(dòng)的末態(tài),這并不是我們想要的。animation不一樣,它擁有更多的表現(xiàn)形式,使其看起來(lái)像與生俱來(lái),天生就會(huì)動(dòng)一樣。


語(yǔ)法

CSS Code復(fù)制內(nèi)容到剪貼板
  1. .area{   
  2.      width50px;   
  3.      height50px;   
  4.      margin-left100px;   
  5.      backgroundblue;   
  6.      -webkit-animation-name:'demo';/*動(dòng)畫屬性名,也就是我們前面keyframes定義的動(dòng)畫名*/  
  7.      -webkit-animation-duration: 10s;/*動(dòng)畫持續(xù)時(shí)間*/  
  8.      -webkit-animation-timing-function: ease-in-out; /*動(dòng)畫頻率,和transition-timing-function是一樣的*/  
  9.      -webkit-animation-delay: 2s;/*動(dòng)畫延遲時(shí)間*/  
  10.      -webkit-animation-iteration-count: infinite;/*定義循環(huán)資料,infinite為無(wú)限次*/  
  11.      -webkit-animation-direction: alternate;/*定義動(dòng)畫方式*/  
  12.   }  

實(shí)例和簡(jiǎn)寫
需要注意的是最后一個(gè)屬性,direction,我們可以這么想,A從甲地到了乙地這是一個(gè)動(dòng)畫,設(shè)置為normal時(shí),第二次播放時(shí)便又是從頭開始,顯得很突兀,這個(gè)時(shí)候需要用alternate,使其看起來(lái)A在甲乙兩地之間來(lái)回運(yùn)動(dòng),代碼如下:

CSS Code復(fù)制內(nèi)容到剪貼板
  1. /*  
  2. 甲地和乙地這兩個(gè)球都是absolutely定位方式,小球也是,只要控制left值即可  
  3. */  
  4. .circle{   
  5. //我給這個(gè)小球球增加了一個(gè)名為demo1的動(dòng)畫   
  6. //你看,它就自己動(dòng)起來(lái)了,回想一下,使用transform的時(shí)候,是不是還得用hover去觸發(fā)   
  7.  -webkit-animation: 'demo1' 2s linear infinite alternate;   
  8.     -o-animation: 'demo1' 2s linear infinite alternate;   
  9.     animation: 'demo1' 2s linear infinite alternate;   
  10. }   
  11. //定義動(dòng)畫部分   
  12. //我只寫了-webkit,真實(shí)中加上@-0-,@-moz-,@keyframes   
  13. @-webkit-keyframes demo1 {   
  14.     from {    
  15.         left:200px;   
  16.         background-color: lightcoral;   
  17.      }   
  18.      50%{   
  19.          left:290px;   
  20.          background-color: lightblue ;   
  21.      }   
  22.   
  23.     to {    
  24.         left:380px;   
  25.         background-color: lightseagreen;   
  26.      }   
  27. }  

2016520122103796.gif (517×202)

alternate方式,放完就倒著放一遍
2016520122132964.gif (517×202)

normal方式,就是放完重頭再放

相關(guān)文章

最新評(píng)論