CSS3 2D轉(zhuǎn)換
通過(guò) 2D 轉(zhuǎn)換抱既,我們能夠?qū)υ剡M(jìn)行移動(dòng)职烧、縮放、轉(zhuǎn)動(dòng)防泵、拉長(zhǎng)或拉伸蚀之。
Internet Explorer 10、Firefox 以及 Opera 支持 transform 屬性捷泞。
Chrome 和 Safari 需要前綴 -webkit-足删。
2D轉(zhuǎn)換
translate() 方法
通過(guò) translate() 方法,元素從其當(dāng)前位置移動(dòng)锁右,根據(jù)給定的 left(x 坐標(biāo)) 和 top(y 坐標(biāo)) 位置參數(shù):
示例
div
{
transform: translate(50px,100px);
-ms-transform: translate(50px,100px); /* IE 9 */
-webkit-transform: translate(50px,100px); /* Safari and Chrome */
-o-transform: translate(50px,100px); /* Opera */
-moz-transform: translate(50px,100px); /* Firefox */
}
rotate() 方法
通過(guò) rotate() 方法失受,元素順時(shí)針旋轉(zhuǎn)給定的角度。允許負(fù)值咏瑟,元素將逆時(shí)針旋轉(zhuǎn)贱纠。
實(shí)例
deg -> 度
div
{
transform: rotate(30deg);
-ms-transform: rotate(30deg); /* IE 9 */
-webkit-transform: rotate(30deg); /* Safari and Chrome */
-o-transform: rotate(30deg); /* Opera */
-moz-transform: rotate(30deg); /* Firefox */
}
scale() 方法
通過(guò) scale() 方法,元素的尺寸會(huì)增加或減少响蕴,根據(jù)給定的寬度(X 軸)和高度(Y 軸)參數(shù):
實(shí)例
scale(2,4) 把寬度轉(zhuǎn)換為原始尺寸的 2 倍谆焊,把高度轉(zhuǎn)換為原始高度的 4 倍。
div
{
transform: scale(2,4);
-ms-transform: scale(2,4); /* IE 9 */
-webkit-transform: scale(2,4); /* Safari 和 Chrome */
-o-transform: scale(2,4); /* Opera */
-moz-transform: scale(2,4); /* Firefox */
}
skew() 方法
通過(guò) skew() 方法浦夷,元素翻轉(zhuǎn)給定的角度辖试,根據(jù)給定的水平線(X 軸)和垂直線(Y 軸)參數(shù):
實(shí)例
skew(30deg,20deg) 圍繞 X 軸把元素翻轉(zhuǎn) 30 度辜王,圍繞 Y 軸翻轉(zhuǎn) 20 度。
div
{
transform: skew(30deg,20deg);
-ms-transform: skew(30deg,20deg); /* IE 9 */
-webkit-transform: skew(30deg,20deg); /* Safari and Chrome */
-o-transform: skew(30deg,20deg); /* Opera */
-moz-transform: skew(30deg,20deg); /* Firefox */
}
matrix() 方法
matrix() 方法把所有 2D 轉(zhuǎn)換方法組合在一起罐孝。
matrix() 方法需要六個(gè)參數(shù)呐馆,包含數(shù)學(xué)函數(shù),允許您:旋轉(zhuǎn)莲兢、縮放汹来、移動(dòng)以及傾斜元素。
實(shí)例
如何使用 matrix 方法將 div 元素旋轉(zhuǎn) 30 度:
div
{
transform:matrix(0.866,0.5,-0.5,0.866,0,0);
-ms-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* IE 9 */
-moz-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Firefox */
-webkit-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Safari and Chrome */
-o-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Opera */
}
2D Transform 方法
函數(shù) | 描述 |
---|---|
matrix(n,n,n,n,n,n) | 定義 2D 轉(zhuǎn)換改艇,使用六個(gè)值的矩陣收班。 |
translate(x,y) | 定義 2D 轉(zhuǎn)換,沿著 X 和 Y 軸移動(dòng)元素谒兄。 |
translateX(n) | 定義 2D 轉(zhuǎn)換摔桦,沿著 X 軸移動(dòng)元素。 |
translateY(n) | 定義 2D 轉(zhuǎn)換承疲,沿著 Y 軸移動(dòng)元素邻耕。 |
scale(x,y) | 定義 2D 縮放轉(zhuǎn)換,改變?cè)氐膶挾群透叨取?/td> |
scaleX(n) | 定義 2D 縮放轉(zhuǎn)換燕鸽,改變?cè)氐膶挾取?/td> |
scaleY(n) | 定義 2D 縮放轉(zhuǎn)換兄世,改變?cè)氐母叨取?/td> |
rotate(angle) | 定義 2D 旋轉(zhuǎn),在參數(shù)中規(guī)定角度啊研。 |
skew(x-angle,y-angle) | 定義 2D 傾斜轉(zhuǎn)換碘饼,沿著 X 和 Y 軸。 |
skewX(angle) | 定義 2D 傾斜轉(zhuǎn)換悲伶,沿著 X 軸艾恼。 |
skewY(angle) | 定義 2D 傾斜轉(zhuǎn)換,沿著 Y 軸麸锉。 |
CSS3 3D轉(zhuǎn)換
Internet Explorer 10 和 Firefox 支持 3D 轉(zhuǎn)換钠绍。
Chrome 和 Safari 需要前綴 -webkit-。
Opera 仍然不支持 3D 轉(zhuǎn)換(它只支持 2D 轉(zhuǎn)換)花沉。
rotateX() 方法
使元素圍繞其 X 軸以給定的度數(shù)進(jìn)行旋轉(zhuǎn)柳爽。
div
{
transform: rotateX(120deg);
-webkit-transform: rotateX(120deg); /* Safari 和 Chrome */
-moz-transform: rotateX(120deg); /* Firefox */
}
rotateY() 旋轉(zhuǎn)
元素圍繞其 Y 軸以給定的度數(shù)進(jìn)行旋轉(zhuǎn)。
實(shí)例
div
{
transform: rotateY(130deg);
-webkit-transform: rotateY(130deg); /* Safari 和 Chrome */
-moz-transform: rotateY(130deg); /* Firefox */
}