css3D效果:
透视属性:perspective(存在浏览器兼容问题)
值越小透视效果越明显,值越大透视效果越不明显
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.box {
width: 300px;
height: 300px;
border: 1px solid #f00;
background-color: #f00;
margin: 300px auto;
transform: perspective(200px) rotateY(30deg);
}
</style>
</head>
<body>
<div class="box">
</div>
</body>
</html>
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.box {
width: 300px;
height: 300px;
border: 1px solid #f00;
background-color: #f00;
margin: 300px auto;
transform: perspective(800px) rotateY(30deg);
}
</style>
</head>
<body>
<div class="box">
</div>
</body>
</html>
灭点位置:
语法:perspective-origin : x轴 y轴;
可以使用的值:left,center,right,length,%;top,center,bottom
3D模型:
语法:transform-style: flat|preserve-3d(preserve-3D | flat 2d效果,默认);
不面对屏幕时是否可见:
语法:backface-visibility: visible(可见) | hidden(隐藏);
backface-visibility:定义元素在不面对屏幕时是否可见
正反旋转效果
3D旋转:
rotate3d(x,y,z,angle) 3D旋转
x:是一个0到1之间的数值,主要用来描述元素围绕X轴旋转的矢量值;
y:是一个0到1之间的数值,主要用来描述元素围绕Y轴旋转的矢量值;
z:是一个0到1之间的数值,主要用来描述元素围绕Z轴旋转的矢量值;
angle:是一个角度值,主要用来指定元素在3D空间旋转的角度,如果其值为正值,元素顺时针旋转,反之元素逆时针旋转。
3D缩放:
transform: scale3d(x,y,z)
x:x轴的缩放比例,
y:y轴的缩放比例,
z:z轴的缩放比例