CSS3 入门教程 CSS3 3D 转换

2024-02-25 开发教程 CSS3 入门教程 匿名 5

CSS3 允许您使用 3D 转换来对元素进行格式化。

点击下面的元素,您可以看到 2D 转换与 3D 转换之间的不同之处,根据自己的需求选择哪一种转换:

2D rotate

3D rotate

浏览器支持

表格中的数字表示支持该属性的第一个浏览器版本号。

紧跟在 -webkit-, -ms- 或 -moz- 前的数字为支持该前缀属性的第一个浏览器版本号。

属性谷歌浏览器ie浏览器搜狐浏览器webkit浏览器

opera浏览器

transform36.0
12.0 -webkit-
10.016.0
10.0 -moz-
4.0 -webkit-23.0
15.0 -webkit-
transform-origin
(three-value syntax)
36.0
12.0 -webkit-
10.016.0
10.0 -moz-
4.0 -webkit-23.0
15.0 -webkit-
transform-style36.0
12.0 -webkit-
11.016.0
10.0 -moz-
4.0 -webkit-23.0
15.0 -webkit-
perspective36.0
12.0 -webkit-
10.016.0
10.0 -moz-
4.0 -webkit-23.0
15.0 -webkit-
perspective-origin36.0
12.0 -webkit-
10.016.0
10.0 -moz-
4.0 -webkit-23.0
15.0 -webkit-
backface-visibility36.0
12.0 -webkit-
10.016.0
10.0 -moz-
4.0 -webkit-23.0
15.0 -webkit-

rotateX() 方法

rotateX()方法,围绕其在一个给定度数X轴旋转的元素。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>W3C(w3cschool.cn)</title>
<style>
div
{
width:100px;
height:75px;
background-color:red;
border:1px solid black;
}
div#div2
{
transform:rotateX(120deg);
-webkit-transform:rotateX(120deg); /* Safari and Chrome */
}
</style>
</head>
<body>
<p><b>注意:</b> Internet Explorer 9 (以及更早版本的浏览器) 和 Opera 不支持 rotateX 方法.</p>
<div>Hello. This is a DIV element.</div>
<div id="div2">Hello. This is a DIV element.</div>
</body>
</html>

rotateY() 方法

rotateY()方法,围绕其在一个给定度数Y轴旋转的元素。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>W3C(w3cschool.cn)</title>
<style>
div
{
width:100px;
height:75px;
background-color:red;
border:1px solid black;
}
div#div2
{
transform:rotateY(130deg);
-webkit-transform:rotateY(130deg); /* Safari and Chrome */
}
</style>
</head>
<body>
<p><b>注意:</b> Internet Explorer 9 (以及更早版本的浏览器) 和 Opera 不支持 rotateY方法.</p>
<div>Hello. This is a DIV element.</div>
<div id="div2">Hello. This is a DIV element.</div>
</body>
</html>

转换属性

下表列出了CSS3所有的转换属性:

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

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 转换元素的透视视图。