
- 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 轴。 | 
推荐手册