css3 transition和transform的應(yīng)用

一、首先學(xué)習(xí)的是transition屬性(zoom不支持transition,適用于具體數(shù)值的屬性值變化或者背景圖的變換)
transition 過渡 作為一個復(fù)合屬性
1.transition-property 指定可以過渡的屬性
默認(rèn)值是all 定義應(yīng)用過渡效果的 CSS 屬性名稱列表,列表以逗號分隔。
2.transition-duration 指過渡完成的時間
默認(rèn)值為0s
3.transition-timing-function 過渡的動畫類型
默認(rèn)值為ease
ease 規(guī)定慢速開始,然后變快,之后慢速結(jié)束的過渡效果

image.png

ease-in 規(guī)定以慢速開始的過渡效果

image.png

ease-out 規(guī)定以慢速結(jié)束的過渡效果

image.png

ease-in-out 規(guī)定以慢速開始和結(jié)束的過渡效果

image.png

linear 規(guī)定以相同速度開始至結(jié)束的過渡效果

image.png

cubic bezier(n,n,n,n) 在cubic-bezier函數(shù)中定義自己的值
4.transition-delay 延遲執(zhí)行過渡的時間
默認(rèn)值為0s
二、transform屬性
transform 向元素應(yīng)用2D或3D轉(zhuǎn)換 只對block級元素生效
1.translate 位移
translateX() 在x軸上發(fā)生位移或者變形
translateY() 在y軸上發(fā)生位移或者變形
translate(x,y) 在x軸 ,y軸上發(fā)生位移或者變形 當(dāng)只有一個值的時候,只有x軸生效
2.scale 縮放
scaleX() 設(shè)置在x軸上發(fā)生縮放
scaleY() 設(shè)置在y軸上發(fā)生縮放
scale(x,y) 設(shè)置在x軸,y軸上發(fā)生縮放 當(dāng)只有一個值的時候,x,y軸都發(fā)生縮放可以設(shè)置負(fù)數(shù) 使用場景:設(shè)置小于12px的字體
3.rotate 旋轉(zhuǎn) 2d旋轉(zhuǎn) 設(shè)置元素在2d平面旋轉(zhuǎn)(z軸),正數(shù)按順時針,負(fù)數(shù)按逆時針
rotateX()設(shè)置沿x軸旋轉(zhuǎn)
rotateY () 設(shè)置沿y軸旋轉(zhuǎn)
4.skew 傾斜
skewX 繞x軸發(fā)生傾斜
skewY 繞y軸發(fā)生傾斜
skew(x,y) 繞x,y軸發(fā)生的傾斜 x軸和y軸和我們理解的相反,常用于平行四邊形圖案

image.png

三、transform-origin: 設(shè)置旋轉(zhuǎn)元素的基點位置
transform-origin是變形原點,也就是該元素圍繞著那個點變形或旋轉(zhuǎn),該屬性只有在設(shè)置了transform屬性的時候起作用;
因為我們元素默認(rèn)基點就是其中心位置,換句話說我們沒有使用transform-origin改變元素基點位置的情況下,transform進(jìn)行的rotate,translate,scale,skew,matrix等操作都是以元素自己中心位置進(jìn)行變化的。
但有時候我們需要在不同的位置對元素進(jìn)行這些操作,那么我們就可以使用transform-origin來對元素進(jìn)行基點位置改變,使元素基點不在是中心位置,以達(dá)到你需要的基點位置。
下面我們主要來看看其使用規(guī)則:
transform-origin(X,Y):用來設(shè)置元素的運動的基點(參照點)。默認(rèn)點是元素的中心點。其中X和Y的值可以是百分值,em,px,其中X也可以是字符參數(shù)值left,center,right;Y和X一樣除了百分值外還可以設(shè)置字符值top,center,bottom 。
語法:-moz-transform-origin: [ | | left | center | right ][ | | top | center | bottom ] ?
transform-origin接受兩個參數(shù),它們可以是百分比,em,px等具體的值,也可以是left,center,right,或者 top,center,bottom等描述性參數(shù) ;
top left | left top 等價于 0 0;
top | top center | center top 等價于 50% 0
right top | top right 等價于 100% 0
left | left center | center left 等價于 0 50%
center | center center 等價于 50% 50%(默認(rèn)值)
right | right center | center right 等價于 100% 50%
bottom left | left bottom 等價于 0 100%
bottom | bottom center | center bottom 等價于 50% 100%
bottom right | right bottom 等價于 100% 100%

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Transform字面上就是變形,改變的意思。在CSS3中transform主要包括以下幾種:旋轉(zhuǎn)rotate、扭...
    hzrWeber閱讀 22,176評論 0 19
  • 關(guān)于css3變形 CSS3變形是一些效果的集合,比如平移、旋轉(zhuǎn)、縮放和傾斜效果,每個效果都被稱作為變形函數(shù)(Tra...
    hopevow閱讀 6,405評論 2 13
  • CSS3動畫的屬性主要分為三類:transform、transition以及animation。 Transfor...
    may_mico閱讀 12,063評論 1 19
  • 選擇qi:是表達(dá)式 標(biāo)簽選擇器 類選擇器 屬性選擇器 繼承屬性: color,font,text-align,li...
    love2013閱讀 2,335評論 0 11
  • 高一軍訓(xùn)的時候,我看見了那個黝黑的少年,穿過人群,一眼就捕捉到了他,也不知道是什么奇妙的因緣,我就喜歡了他。他是體...
    如果MAOYE閱讀 478評論 1 10