3D
区别 :
- 给父元素: 子元素有共同的视角。
- 给子元素,各个子元素有自已的视角。
- 注意:当给子元素设置transform:translateZ()的值大于perspective的值时,会脱离视距之外,使元素不可见。
perspective(透视距离)
- 1、定义3D元素的透视效果 (景深或视角),(或者可以理解为: 设置从何处查看一个元素)
- 2、常用语法: perspective : 1000px;
- 3、 值越小,元素离视图越近,透视效果越明显,值越大,越远离视图,透视效果越不明显。
- 4、需要3D变换的元素一定要在外面套一个父元素,在父元素上设置perspective属性。
- 5、也可以给元素本身设置 : transform: perspective(300px) rotateY(60deg) ;
transform-style(是否为3d模型)
- (1)指定在父元素3D变换时,子元素如何在3D空间中呈现,
- (2)可选项:preserve-3D | flat (2d效果,默认)
- (3)需要设置在3D变换的父元素中,并且高于任何嵌套的变形元素。
- (4)如果你的父元素设置了transform-style值为preserve-3d,就不能为了防止子元素溢出容器而设置overflow值为hidden;
rotate3d(x,y,z,angle)(角度)
- rotateX正值表示元素围绕X轴从前往后顺时针旋转
- rotateX负值值表示元素围绕X轴从后往前逆时针旋转
- rotateY正值表示元素围绕Y轴从左往右顺时针旋转
- rotateY负值值表示元素围绕Y轴右后往左逆时针旋转Y
- rotateZ正值表示元素围绕Z轴从上往下顺时针旋转
- rotateZ负值值表示元素围绕Z轴从下往上逆时针旋转
perspective-origin()(视角)
(1)语法:perspective-origin : x轴 y轴;
(2)作用:改变视图角度(可理解为视线的方向),影响三维效果呈现。
(3)坐标为当前元素的原点。和perspective结合使用。
transform-origin : x轴 y轴 z轴;
注意:Z轴只能设置为像素值,不能用关键字
backface-visibility
- 作用:定义元素在不面对屏幕时是否可见
- visible 可见
hidden 不可见