1.transform浏览器支持情况
也就是说目前不考虑老浏览器的话是不用加前缀的,感谢菜鸟教程:/cssref/css3-pr-transform.html
transform默认值none;就是不转换,不继承,js中对其更改示例:object.style.transform="rotate(7deg)"
2.transform能干啥?
transform属性让元素进行2D或3D转换。可以将元素:旋转,缩放,移动,倾斜等。
3.transform怎么用?
transform: none|transform-functions;
none是默认的,就是不进行转换,好理解。transform-functions有哪些?如下表:
transform-functions的值描述示例
matrix(n,n,n,n,n,n)
定义 2D 转换,使用六个值的矩阵。
测试
matrix3d(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n)
定义 3D 转换,使用 16 个值的 4x4 矩阵。
translate(x,y)
定义 2D 转换。
测试
translate3d(x,y,z)
定义 3D 转换。
translateX(x)
定义转换,只是用 X 轴的值。
测试
translateY(y)
定义转换,只是用 Y 轴的值。
测试
translateZ(z)
定义 3D 转换,只是用 Z 轴的值。
scale(x,y)
定义 2D 缩放转换。
测试
scale3d(x,y,z)
定义 3D 缩放转换。
scaleX(x)
通过设置 X 轴的值来定义缩放转换。
测试
scaleY(y)
通过设置 Y 轴的值来定义缩放转换。
测试
scaleZ(z)
通过设置 Z 轴的值来定义 3D 缩放转换。
rotate(angle)
2D 旋转,在参数中规定角度(如:30deg)。
transform: rotate(360deg);
rotate3d(x,y,z,angle)
定义 3D 旋转。
rotateX(angle)
定义沿着 X 轴的 3D 旋转。
测试
rotateY(angle)
定义沿着 Y 轴的 3D 旋转。
测试
rotateZ(angle)
定义沿着 Z 轴的 3D 旋转。
测试
skew(x-angle,y-angle)
定义沿着 X 和 Y 轴的 2D 倾斜。
transform: rotate(30deg,60deg);
skewX(angle)
定义沿着 X 轴的 2D 倾斜。
skewY(angle)
定义沿着 Y 轴的 2D 倾斜。
perspective(n)
为 3D 转换元素定义透视视图。
测试
4.详细介绍下transform属性怎么用
页面有个几个div,宽200px,高100px,有的为其加上transform:rotate(30deg),效果如下(1\2\3\6是没有定义transform的):
注意,这是打开页面就会变形旋转好的,不会有动画!!!
使用transition过渡,才会产生动画。如下:
1 .box5{
2 /*匀速 时间2s*/
3 transition:linear 2s;
4 }
5 .box5:hover{
6 transform:rotate(360deg);
7 }
效果如下:
下面主要介绍transform属性值的效果,所以都配合transition来使用吧,方便看看前后变化的不同。
skewX(x) ,x是倾斜的度数,
1
2 .box1{
3 width:200px;height:100px;background-color:#FF9900;
4 transition:0.5s;
5 }
6 .box1:hover{
7 transform:skewX(-45deg);
8 }
9
10 ...11
12 看看我的变化
如果觉得《html旋转 缩放 移动 CSS3旋转缩放移动倾斜等效果——transform》对你有帮助,请点赞、收藏,并留下你的观点哦!