- 0133技术站
- 联系QQ:18840023
- QQ交流群
- 微信公众号
CSS3 2D 转换
通过 CSS3 转换,我们能够对元素进行移动、缩放、转动、拉长或拉伸
浏览器支持:
属性 | 浏览器支持 | ||||
transform |
需要前缀 -ms- | 需要前缀 -webkit- |
需要前缀 -webkit- |
2D 转换方法
translate()
rotate()
scale()
skew()
matrix()
translate() 方法
通过 translate() 方法,元素从其当前位置移动,根据给定的 left(x 坐标) 和 top(y 坐标) 位置参数rotate()方法
div { width:100px; height:75px; background-color:pink; border:1px solid black; } .demo { opacity: 0.5; transform:translate(150px,100px); -ms-transform:translate(150px,100px); /* IE 9 */ -webkit-transform:translate(150px,100px); /* Safari and Chrome */ }
点击 "运行实例" 按钮查看在线实例
效果图:
rotate()方法
通过rotate()方法,在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。
div { width:100px; height:75px; background-color:pink; border:1px solid black; } .demo { opacity: 0.5; transform:rotate(150deg); -ms-transform:rotate(150deg); /* IE 9 */ -webkit-transform:rotate(150deg); /* Safari and Chrome */ }
点击 "运行实例" 按钮查看在线实例
效果图:
scale()方法
通过scale()方法,可以使元素增加或减少的大小,取决于宽度(X轴)和高度(Y轴)的参数
div { width:100px; height:75px; background-color:pink; border:1px solid black; } .demo { margin: 100px; opacity:0.5; transform:scale(1.8,1..8); -ms-transform:scale(1.8,1..8); /* IE 9 */ -webkit-transform:scale(1.8,1.8); /* Safari and Chrome */ }
点击 "运行实例" 按钮查看在线实例
效果图:
skew() 方法
它有两个参数值,分别表示X轴和Y轴倾斜的角度,如果第二个参数为空,则默认为0,参数为负表示向相反方向倾斜。
skewX():表示只在X轴(水平方向)倾斜
skewY():表示只在Y轴(垂直方向)倾斜
div { width:100px; height:75px; background-color:pink; border:1px solid black; } .demo { margin: 100px; opacity:0.5; transform:skew(20deg,40deg); -ms-transform:skew(20deg,40deg); /* IE 9 */ -webkit-transform:skew(20deg,40deg); /* Safari and Chrome */ }
点击 "运行实例" 按钮查看在线实例
效果图:
matrix()方法
matrix()方法将2D变换方法合并成一个具有旋转,缩放,移动(平移)和倾斜功能
div { width:100px; height:75px; background-color:pink; border:1px solid black; } .demo { margin: 100px; opacity:0.5; 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 */ -webkit-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Safari and Chrome */ }
点击 "运行实例" 按钮查看在线实例
效果图:
新的转换属性
Property | 描述 | CSS版本 |
---|---|---|
transform | 适用于2D或3D转换的元素 | 3 |
transform-origin | 允许更改转化元素位置 | 3 |
2D转换方法
函数 | 描述 |
---|---|
matrix(n,n,n,n,n,n) | 定义 2D 转换,使用六个值的矩阵。 |
translate(x,y) | 定义 2D 转换,沿着 X 和 Y 轴移动元素。 |
translateX(n) | 定义 2D 转换,沿着 X 轴移动元素。 |
translateY(n) | 定义 2D 转换,沿着 Y 轴移动元素。 |
scale(x,y) | 定义 2D 缩放转换,改变元素的宽度和高度。 |
scaleX(n) | 定义 2D 缩放转换,改变元素的宽度。 |
scaleY(n) | 定义 2D 缩放转换,改变元素的高度。 |
rotate(angle) | 定义 2D 旋转,在参数中规定角度。 |
skew(x-angle,y-angle) | 定义 2D 倾斜转换,沿着 X 和 Y 轴。 |
skewX(angle) | 定义 2D 倾斜转换,沿着 X 轴。 |
skewY(angle) | 定义 2D 倾斜转换,沿着 Y 轴。 |
推荐手册