阅读 (0)

CSS 3D 转换

CSS 3D 转换

CSS 还支持 3D 转换。

请将鼠标悬停在下面的元素上,即可查看 2D 和 3D 转换之间的区别:

2D rotate
3D rotate

在本章中,您将学习如下 CSS 属性:

  • transform

浏览器支持

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

属性ChromeIEFirefoxSafariOpera
transform36.010.016.09.023.0

CSS 3D 转换方法

通过 CSS transform 属性,您可以使用以下 3D 转换方法:

  • rotateX()

  • rotateY()

  • rotateZ()

rotateX() 方法

Rotate X

rotateX() 方法使元素绕其 X 轴旋转给定角度:

实例

#myDiv {
  transform: rotateX(150deg);
}

亲自试一试

rotateY() 方法

Rotate Y

rotateY() 方法使元素绕其 Y 轴旋转给定角度:

实例

#myDiv {
  transform: rotateY(130deg);
}

亲自试一试

rotateZ() 方法

rotateZ() 方法使元素绕其 Z 轴旋转给定角度:

实例

#myDiv {
  transform: rotateZ(90deg);
}

亲自试一试

CSS 转换属性

下表列出了所有 3D 变换属性:

属性描述
transform向元素应用 2D 或 3D 转换。
transform-origin允许你改变被转换元素的位置。
transform-style规定被嵌套元素如何在 3D 空间中显示。
perspective规定 3D 元素的透视效果。
perspective-origin规定 3D 元素的底部位置。
backface-visibility定义元素在不面对屏幕时是否可见。

CSS 3D 转换方法

函数描述
matrix3d(n,n,n,n,n,n,
n,n,n,n,n,n,n,n,n,n)
定义 3D 转换,使用 16 个值的 4x4 矩阵。
translate3d(x,y,z)定义 3D 转化。
translateX(x)定义 3D 转化,仅使用用于 X 轴的值。
translateY(y)定义 3D 转化,仅使用用于 Y 轴的值。
translateZ(z)定义 3D 转化,仅使用用于 Z 轴的值。
scale3d(x,y,z)定义 3D 缩放转换。
scaleX(x)定义 3D 缩放转换,通过给定一个 X 轴的值。
scaleY(y)定义 3D 缩放转换,通过给定一个 Y 轴的值。
scaleZ(z)定义 3D 缩放转换,通过给定一个 Z 轴的值。
rotate3d(x,y,z,angle)定义 3D 旋转。
rotateX(angle)定义沿 X 轴的 3D 旋转。
rotateY(angle)定义沿 Y 轴的 3D 旋转。
rotateZ(angle)定义沿 Z 轴的 3D 旋转。
perspective(n)定义 3D 转换元素的透视视图。