transform 属性小解

css中transform包括三种: 旋转rotate(), translate()移动, 缩放scale(), skew()扭曲以及矩形变换matrix()

语法:

transform: none | <transform-function> [ <transform-function> ]*

transform: rotate | translate | scale | skew | matrix

注解: none: 表示不进行变换

<transform-function>表示可以多个变化叠加,彼此之间用空格隔开

适用范围:块级元素和内联元素均可使用

兼容性写法:

transform:rotate(7deg);

-ms-transform:rotate(7deg); /* IE 9 */

-moz-transform:rotate(7deg); /* Firefox */

-webkit-transform:rotate(7deg); /* Safari 和 Chrome */

-o-transform:rotate(7deg); /* Opera*/

------------------------------------------------------------------------------------------------

旋转:

1.rotate(a) (绕着旋转中心2D旋转)

参数是角度,单位是deg,不进行变换则为none

旋转中心:默认是对象正中心,可通过transform-origin来定义

兼容性: 均支持

eg:rotate(5deg)顺时针5度 rotate(-10deg)逆时针10度

2.rotateX(a) (绕着X轴3d旋转)

IE, opera不支持

3.rotateY(a) (绕着Y轴3d旋转)

IE, opera不支持

-----------------------------------------------------------------------------------------------------

位置变换:

1.translate(x,y)(2D位置变化)

单位可为px,em,rem和%

若未提供y则默认y为0,基点默认对象中心,可通过transform-origin改变

兼容性:均支持

2.translateX()在X轴方向上进行位置变换

3.translateY()在Y轴方向上进行位置变换

-------------------------------------------------------------------------------------------------------

缩放:

1.scale(x, y)

x,y为数字,缩放的比例

若未提供y则默认与x轴的缩放比例一样,可改变基点

兼容性:均支持

2.scaleX()

只在X轴方向上进行缩放

兼容性:均支持

3.scaleY()

只在X轴方向上进行缩放

兼容性:均支持

--------------------------------------------------------------------------------------------------------

拉伸:

1.skew(x, y)

单位是deg,在x,y轴方向上进行拉伸

若未提供y则默认为0

2.skew(x)

3.skew(y)

均兼容性良好

-----------------------------------------------------------------------------------------------------------

矩阵变换:

matrix(涉及数学上的矩阵,应用面小,此处先不做解释)

详情可参考:http://www.w3cplus.com/content/css3-transform

原文地址:https://www.cnblogs.com/yanze/p/5992944.html