CSS transform 属性

CSS transform 属性允许旋转,缩放,倾斜或平移给定元素。这是通过修改 CSS 视觉格式化模型的坐标空间来实现的。


实例

旋转 div 元素:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <style>
  5. div
  6. {
  7. margin:30px;
  8. width:200px;
  9. height:100px;
  10. background-color:yellow;
  11. /* Rotate div */
  12. transform:rotate(9deg);
  13. -ms-transform:rotate(9deg); /* Internet Explorer */
  14. -moz-transform:rotate(9deg); /* Firefox */
  15. -webkit-transform:rotate(9deg); /* Safari 和 Chrome */
  16. -o-transform:rotate(9deg); /* Opera */
  17. }
  18. </style>
  19. </head>
  20. <body>
  21. <div>Hello World</div>
  22. </body>
  23. </html>

页面底部有更多实例。


浏览器支持

表格中的数字注明了完全支持该属性的首个浏览器版本。

带 -webkit-、-moz- 或 -ms- 的数字表示使用前缀的首个版本。

属性
transform (2D)36.04.0 -webkit-10.09.0 -ms-16.03.5 -moz-9.03.2 -webkit-23.015.0 -webkit-10.5 -o-
transform (3D)36.012.0 -webkit-12.010.09.04.0 -webkit-23.015.0 -webkit-

定义和用法

transform 属性向元素应用 2D 或 3D 转换。该属性允许我们对元素进行旋转、缩放、移动或倾斜。

请旋转这个黄色的 div 元素

HELLO
旋转:

transform: rotate(7deg);

注意:只能转换由 box-model 定位的元素。根据经验,如果元素具有display: block,则由 box-model 定位元素。
默认值:none
继承性:no
版本:CSS3
JavaScript 语法:object.style.transform="rotate(7deg)"

语法

  1. transform: none|transform-functions;
描述测试
none定义不进行转换。测试
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 旋转,在参数中规定角度。测试
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 倾斜转换。测试
skewX(angle)定义沿着 X 轴的 2D 倾斜转换。测试
skewY(angle)定义沿着 Y 轴的 2D 倾斜转换。测试
perspective(n)为 3D 转换元素定义透视视图。测试

相关页面

CSS3 教程:CSS3 2D 转换

CSS3 教程:CSS3 3D 转换

分类导航