perspective 和 transform-style: preserve-3d;
2022/1/24 6:06:12
本文主要是介绍perspective 和 transform-style: preserve-3d;,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
perspective 的作用是可以让子元素有近大远小的视觉效果
transform-style: preserve-3d; 可以让当前元素变成一个真正的3D立体元素
perspective 属性给父元素设置,transform-style: preserve-3d; 给需要转换成真正3D立体的元素本身设置
perspective(实现透视效果),2D 该属性添加给父级,数值一般取值800px-1200px,空间转换时 实现近大远小、近实远虚的视觉效果。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>透视效果</title> <style> .box { width: 200px; height: 200px; margin: 100px auto; background-color: pink; transition: all 0.5s; } body { /* 800-1200px */ perspective: 1000px; } .box:hover { transform: translateZ(500px); } </style> </head> <body> <div class="box"></div> </body> </html>
transform-style: preserve-3d; 3D 使子元素处于真正的3d空间, 默认值flat, 表示子元素处于2D平面内呈现。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>3D导航</title> <style> ul { margin: 0; padding: 0; list-style: none; } .navs { width: 300px; height: 40px; margin: 50px auto; } .navs li { position: relative; float: left; width: 100px; height: 40px; line-height: 40px; transition: all 0.5s; /* 开启3d立体空间 */ transform-style: preserve-3d; /* 让父盒子沿着Y轴旋转45deg,为看到立方体盒子的侧边 */ /* transform: rotateY(45deg) rotateX(30deg); */ } .navs li a { position: absolute; left: 0; top: 0; /* display: block; */ width: 100%; height: 100%; text-align: center; text-decoration: none; color: #fff; } .navs li a:first-child { background-color: green; transform: translateZ(20px); } .navs li a:last-child { background-color: orange; transform: rotateX(90deg) translateZ(20px); } .navs li:hover{ transform: rotateX(-90deg); } </style> </head> <body> <div class="navs"> <ul> <li> <a href="#">首页</a> <a href="#">Index</a> </li> <li> <a href="#">登录</a> <a href="#">Login</a> </li> <li> <a href="#">注册</a> <a href="#">Register</a> </li> </ul> </div> </body> </html>
这篇关于perspective 和 transform-style: preserve-3d;的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享