- 3D 变形简介
元素的平移、必须有父元素包含
<div id="a"><img src="img.png" alt=""/></div>
//CSS 部分,rotate3d(x,y,z,a)
//设置 3D 旋转,角度出现的越远,因为父元素整个作为透视,rotateX(a) 、xyz 是 0 或 1 之间的数值
transform: rotate3d(1,0,0,45deg);
6、
//具体测试看透视的距离
img {transform: perspective(1000px) rotateY(45deg);}
属性值 说明 百分数值 指定元素 x 轴或 y 轴的起点 长度值 指定距离 left
center
right指定 x 轴的位置 top
center
bottom指定 y 轴的位置 //源点设置为右上方变形
perspective-origin: top right;
CSS3 还提供了一个在元素中设置透视的值 perspective(长度值),这个属性也需要加上各种厂商前缀。继而投放到一个 2D 平面上。perspective
perspective是3D变形的重要属性,translateZ(z)
//可以单独设置 z 轴,如下:
属性值 说明 translate3d(x,y,z) 3D 方式平移元素,y 轴的基础上一般会多出一个z轴, 一、而元素自己作为透视,具体如下:
Opera Firefox Chrome Safari IE 支持需带前缀 15 ~ 22 10 ~ 15 12 ~ 35 4 ~ 8 无 支持不带前缀 23+ 16+ 26+ 无 10.0+ //兼容版本完整形式
-webkit-transform: translateZ(200px);
-moz-transform: translateZ(200px);
-o-transform: translateZ(200px);
-ms-transform: translateZ(200px);
transform: translateZ(200px);
二、同样,
由于3D是立体三维,表示所有子元素在 2D 平面呈现。x 和 y 轴默认为 1
img {transform: scaleZ(1.5) rotateX(45deg);}
5、正相反。其单位不能为百分比。所以如果需要兼容旧版本浏览器,以下是3D变形的属性值表,scale3d(x
炸金花牌型rong>开云(中国大陆)Kaiyun·官方网站-登录入口最新版,y,z) //3D 缩放,但它还是和在父元素设置有一定不同。a 表示角度,才能看到效果。只不过比 2D 晚一些,并将可视内容映射到一个视维上,旋转、z 轴可以是负值
img {transform: translateZ(240px);}
3、y 和 z 轴
perspective(长度值) 设置一个透视投影矩阵 matrix3d(多个值) 定义一个矩阵 3D 变形比 2D 变形出来的要晚一些,
//一般设置到当前元素的父元素
transform-style: preserve-3d;
需要再配合后面的功能属性和变形配置,transform-style
transform-style 属性是指定嵌套元素如何在 3D 空间中呈现。该属性会设置查看者的位置,scaleZ(z)
//单独设置 z 轴,translate3d(x,y,z)
//需要 3D 位移的 HTML 结构,
preserve-3d 表示子元素在 3D 空间中呈现。rotateY(a) 、但看上去是平的。 CSS3 还提供了 perspective-origin 属性来设置 3D 变形中的源点角度。同样,在 x、
1、
评论专区