当前位置: 首页 > news >正文

【前段基础入门之】=>CSS3新特性 3D 变换

导语

在上一章节中,我们分享了2D 变换的效果,也分享了一些案例,同时,既然有2D 变换,那么也就肯定有 3D 变换 那么本章节,就为大家带来有关3D 变换的分享.

在这里插入图片描述


文章目录

  • `开启3D空间`
  • 设置`景深`
  • `透视点位置`
  • `3D 位移`
  • `3D 旋转`
  • 3D `缩放`
  • 多重变换
  • 背部可见性

在这里插入图片描述

开启3D空间

重要原则:元素进行 3D 变换的首要操作:必须要为其父元素开启 3D 空间
在这里插入图片描述

transform-style: preserve-3d;  /*为其父元素开启 3D 空间*/

设置景深

概念

何为景深?—— 指定观察者与 z=0 平面的距离,能让发生 3D 变换的元素,产生立体透视效果,看来更加立体
在这里插入图片描述

transform-style: preserve-3d;  /*为其父元素开启 3D 空间*/
perspective: 700px;  /*并且自定义设置一个景深*/

初步案例

<div class="box"><div>3D变换</div>
</div>
.box {width: 600px;height: 600px;border: 1px solid;margin: 0 auto;margin-top: 105px;transform-style: preserve-3d;  /*为其父元素开启 3D 空间*/perspective: 700px;  /*并且自定义设置一个景深*/&>div {width: 600px;height: 600px;font-size: 25px;background-color: #5693af;transform: rotatex(53deg);}
}

立体效果
在这里插入图片描述


透视点位置

所谓透视点位置,就是观察者位置;默认的透视点在当前开启3D 元素的正中心

在这里插入图片描述

取值范围

属性取值
perspective-originx轴距离 y轴距离

x轴百分比 y轴百分比; 默认观察源为 50% 50%

方位单词1 方位单词2; 方位单词:top、bottom、center、left、right

注意:

  • 若只设置了一个值,则第二个值默认为 50%

在这里插入图片描述


3D 位移

3D 位移是在 2D 位移的基础上,可以让元素沿 z 轴位移,具体使用方式如下:

  • 先给元素添加 转换属性 transform
  • 编写 transform 的具体值, 3D 位移 相关可选值如下:
属性值描述
translateZ设置 z 轴位移,需指定长度值,正值向屏幕外,负值向屏幕里,且不能写 百分比
translate3d第1个参数对应 x 轴,第2个参数对应 y 轴,第3个参数对应 z 轴,且均不能省略
transform: translate3d(105px, 136px, 95px);

在这里插入图片描述


3D 旋转

3D 旋转是在 2D 旋转的基础上,可以让元素沿 x 轴y 轴旋转,具体使用方式如下:

  • 先给元素添加 转换属性 transform
  • 编写 transform 的具体值, 3D 旋转 相关可选值如下:
属性值描述
rotateX设置 x 轴旋转角度,需指定一个角度值( deg ),面对 x 轴正方向:正值顺时针,负值逆时针
rotateY设置 Y 轴旋转角度,需指定一个角度值( deg ),面对 Y 轴正方向:正值顺时针,负值逆时针
rotateZ设置 Z 轴旋转角度,需指定一个角度值( deg ),面对 Z 轴正方向:正值顺时针,负值逆时针
rotate默认,等同于rotateZ
rotate3d接收 4个参数,前 3 个参数分别表示坐标轴: x , y , z , 第 4 个参数表示旋转的角度值(deg),参数不允许省略
transform: rotate3d(1,1,1,30deg); 
  • 表示:X轴、 Y轴 、 Z轴 分别旋转30 度

3D 缩放

3D 缩放是在 2D 缩放的基础上,可以让元素沿 z 轴缩放,具体使用方式如下:

  • 先给元素添加 转换属性 transform
  • 编写 transform 的具体值, 3D 缩放 相关可选值如下:
属性值描述
scaleZ设置 z 轴方向的缩放比例,值为一个数字1 表示不缩放,大于 1 放大,小于 1 缩小
scale3d接收3个参数第1个参数对应 x 轴,第2个参数对应 y 轴,第3个参数对应 z 轴,参数不允许省略

值得注意

由于HTML 元素没有厚度,所以当设置 Z轴 缩放的时候,实际上是改变的景深


多重变换

多个变换,可以同时使用一个 transform 来集中式编写

transform: translateZ(100px) scaleZ(3) rotateY(40deg);

在这里插入图片描述


背部可见性

使用 backface-visibility 指定元素背面,在面向用户时是否可见,常用值如下:

属性值描述
visible指定元素背面可见,允许显示正面的镜像。—— 默认值
hidden指定元素背面不可见

在这里插入图片描述


🚵‍♂️ 博主座右铭:向阳而生,我还在路上!
——————————————————————————————
🚴博主想说:将持续性为社区输出自己的资源,同时也见证自己的进步!
——————————————————————————————
🤼‍♂️ 如果都看到这了,博主希望留下你的足迹!【📂收藏!👍点赞!✍️评论!】
——————————————————————————————

http://www.lryc.cn/news/195777.html

相关文章:

  • form表单的三种封装方法(Vue+ElementUI)
  • 云原生周刊:CNCF 宣布 Cilium 毕业 | 2023.10.16
  • 岩土工程监测利器:多通道振弦数据记录仪应用隧道监测
  • hive排序
  • 网络安全入门教程(非常详细)从零基础入门到精通
  • 自动驾驶中的数据安全和隐私
  • 回应:淘宝支持使用微信支付?
  • k8s的etcd启动报错
  • codeigniter 4.1.3 gadget chain
  • L1-039 古风排版 C++解法
  • docker安装tomcat
  • 别人ping不通我的ip解决方法
  • Python爬虫基础之Selenium详解
  • MS5228数模转换器可pin对pin兼容AD5628
  • 强化学习基础(2)—常用算法总结
  • Web攻防01-ASP应用相关漏洞-HTTP.SYSIIS短文件文件解析ACCESS注入
  • 入门小白拥有服务器的建议
  • Spring源码解析——事务增强器
  • JAVA发送消息到RabbitMq
  • Python 函数(lambda 匿名函数、自定义函数、装饰器)基本使用指南
  • 第五届芜湖机器人展,正运动助力智能装备“更快更准”更智能!
  • JVM八股文
  • 代码随想录算法训练营第二十四天丨 回溯算法part02
  • 【Python机器学习】零基础掌握AgglomerativeClustering聚类
  • uniapp小程序中给web-view页面添加授权弹窗(使用cover-view组件覆盖实现该功能)
  • 2023年全球及中国CGT CDMO市场发展现状分析:CGT 渗透率有效助力CGT CDMO快速发展[图]
  • 上抖音热搜榜需要做哪些准备?
  • LDA代码训练报错记录
  • 【吞噬星空】爽翻,徐欣喜提永恒之体,罗峰秒杀败类,阿特金磕头认错
  • 【c++】跟webrtc学状态改变