CSS面試考點(diǎn)之transform

transform屬性可以實(shí)現(xiàn)文字或圖像的旋轉(zhuǎn)、縮放、傾斜、移動(dòng)這4中類型的變形處理。

1、2D

1)旋轉(zhuǎn)

rotate方法,定義 2D 旋轉(zhuǎn)。在參數(shù)中加入角度值,角度值后面跟表示角度單位的“deg”文字即可,旋轉(zhuǎn)方向?yàn)轫槙r(shí)針方向。

例:transform:rotate(45deg); 旋轉(zhuǎn)45度。

2)縮放?

scale方法來實(shí)現(xiàn)文字或圖像的縮放處理,在參數(shù)中指定縮放倍率。

例:transform:scale(0.5);//縮小一半

可以分別指定元素的水平方向的放大倍率與垂直方向的放大倍率。

例:transform:scale(0.5,2);//水平方向縮小一半,垂直方向放大一倍。

scaleX(x)通過設(shè)置 X 軸的值來定義縮放轉(zhuǎn)換。

scaleY(y)通過設(shè)置 Y 軸的值來定義縮放轉(zhuǎn)換。

3)傾斜?

skew方法實(shí)現(xiàn)文字或圖像的傾斜處理,在參數(shù)中分別指定水平方向上的傾斜角度垂直方向上的傾斜角度

例:transform:skew(30deg,30deg);//水平方向上傾斜30度,垂直方向上傾斜30度。

skewX(angle)定義沿著 X 軸的 2D 傾斜轉(zhuǎn)換。

skewY(angle)定義沿著 Y 軸的 2D 傾斜轉(zhuǎn)換。

4)移動(dòng)

translate方法來實(shí)現(xiàn)移動(dòng)文字或圖像,在參數(shù)中分別指定水平方向上的移動(dòng)距離與垂直方向上的移動(dòng)距離。

例:transform:translate(50px,50px);// 水平方向上移動(dòng)50px,垂直方向上移動(dòng)50px

只使用一個(gè)參數(shù),省略另一個(gè)參數(shù)。這種情況下視為只在水平方向上移動(dòng),垂直方向上不移動(dòng)。

translateX(x)定義轉(zhuǎn)換,只是用 X 軸的值。

translateY(y)定義轉(zhuǎn)換,只是用 Y 軸的值。

5)變形的基準(zhǔn)點(diǎn)

在使用transform方法進(jìn)行文字或圖像變形的時(shí)候,是以元素的中心點(diǎn)為基準(zhǔn)點(diǎn)進(jìn)行變形的。

transform-origin屬性可以改變變形的基準(zhǔn)點(diǎn)。

例:ransform:rotate(45deg);

transform-origin:left bottom;// 把基準(zhǔn)點(diǎn)修改為元素的左下角

基準(zhǔn)點(diǎn)在元素水平方向上的位置:left、center、right;

基準(zhǔn)點(diǎn)在元素垂直方向上的位置:top、center、bottom。

2、3D旋轉(zhuǎn)

1)旋轉(zhuǎn)

rotate3d(x,y,z,angle) 定義 3D 旋轉(zhuǎn)。

或者分別使用rotateX方法、rotateY方法、rotateZ方法使元素圍繞X軸、Y軸、Z軸旋轉(zhuǎn),在參數(shù)中加入角度值,角度值后面跟表示角度單位的deg文字即可,旋轉(zhuǎn)方向?yàn)轫槙r(shí)針旋轉(zhuǎn)。

例:transform:rotate3d(x,y,z,angle)

transform:rotateX(45deg);

transform:rotateY(45deg);

transform:rotateZ(45deg);

transform:rotateX(45deg) rotateY(45deg) rotateZ(45deg);

transform:scale(0.5) rotateY(45deg) rotateZ(45deg);

2)縮放

scale3d(x,y,z)定義 3D 縮放轉(zhuǎn)換。

或者分別使用scaleX方法、scaleY方法、scaleZ方法使元素按X軸、Y軸、Z軸進(jìn)行縮放,在參數(shù)中指定縮放倍率。

例:transform:scale3d(x,y,z);

transform:scaleX(0.5);

transform:scaleY(1);

transform:scaleZ(2);

transform:scaleX(0.5)scaleY(1);

transform:scale(0.5) rotateY(45deg);

3)傾斜

分別使用skewX方法、skewY方法使元素在X軸、Y軸上進(jìn)行順時(shí)針方向傾斜(無skewZ方法),在參數(shù)中指定傾斜的角度。

例:transform:skewX(45deg);

transform:skewY(45deg);

4)移動(dòng)

使用translateX方法、translateY方法、translateZ方法、使元素在X軸、Y軸、Z軸方向上進(jìn)行移動(dòng),在參數(shù)中加入移動(dòng)距離。

例:transform:translateX(50px);

transform:translateY(50px);

transform:translateZ(50px);

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容