空间转换案例-3D导航

news2025/1/12 2:58:47

想要制作这么一个简单的 3D 导航栏需要了解以下几个知识 :

1.空间转换 : 

从坐标轴角度除了我们熟知的 X , Y 外还会和 Z 坐标轴 构成一个立体空间, Z轴的位置与我们眼睛视线的方向相同.

 空间转换的属性仍然是 transform ,所以可以给他添加 空间的 平移,旋转,缩放 等效果.

 2.空间转换-平移 : 

在默认状态下 , 给 Z 轴 设置平移没有任何效果 , 因为电脑是平面 , 默认无法观察与我们视线相对的Z轴 的平移效果所以我们掌握另一个知识.

3.视距(perspective) : 

相当于用来指定 用户电脑屏幕 之间的距离 . 这样就会产生一个近大远小的视觉效果 (又称为 透视效果 , 意思就是我们想要平移 z 轴 , 那么 z 轴 的方向就是人眼到电脑屏幕的方向 , 如果给正数就是向我们人眼的方向移动,就会产生 "近大" 的效果,反之,给负数就是远离我们的人眼距离,则会产生 "远小" 的效果.)

演示 : 

如上 , 给父级 .father 添加视距属性后再设置 Z 轴 的平移属性(正数变大,负数变小)

 注意 : 视距属性必须添加给直接父级.建议取值在 800~1000之间.

4.空间转换-旋转 : 平面旋转是沿着图片的中心点旋转,那么空间的旋转就是沿着 Z 轴里的中心点 旋转 ,也就是人眼到屏幕距离的中心点旋转,所以空间的旋转效果和平面的旋转效果看起来会是一样的.

 下面分别演示图片沿  X , Y , Z 轴取正负值旋转效果 : ( Z 轴旋转效果和平面旋转看起来一样 )

旋转方向的正负值可以靠用下面的方法判断:

5.空间的立体呈现 - transform-style : 可以在电脑里面搭建一个立方体,属性 transform-style 默认值是 flat, 只要将值设置为 preserve-3d 就可以.

 立体呈现步骤:

1.父元素添加属性  2.给子级定位  3.用旋转和平移调整位置

顺序演示 :

父级盒子里有两个盒子,第一步先将 父级盒子 设置立体属性 transform-style: preserve-3d;

第二步 将两个子级盒子 定位到父级盒子 里 (子绝父相) , 第三步,给两个子级盒子设置彼此 在 Z 轴上的前后距离 就会产生立体效果,前一个子盒子向我们人眼移动,第二个子盒子向我们人眼远离就会产生 前后的效果 ,最后设置鼠标悬浮旋转一下整个盒子可以看到效果.

 


 

 下面制作 3D导航栏

和上面差不多的步骤 : 

将两个子元素的父级元素设置 立体呈现属性 再将两个子元素定位 在父级元素上面让他们 先重叠 在一起,然后单独设置 橙色盒子 旋转 90°,再让它向上 平移 盒子的一半 , 让它置顶成为立方体的最上面,最后将 绿色盒子 向前移动本身高度的一半,让它成为立方体的最前面 ,再设置每个盒子 li 元素的旋转效果. 这些都是在 Z 轴上进行的平移和旋转,并且两个盒子都有独立的坐标轴, 互相不影响.

 演示 : 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/558366.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[问]python中字典dict如何排序sorted?

文章目录 一、sorted使用二、按照keys的顺序对dict中的keys排序三、按照valuse的顺序对dict中的values排序四、按照keys的顺序对dict中的items排序五、按照values的顺序对dict中的items排序六、按照keys的顺序对dict的values排序七、按照values的顺序对dict中的keys排序八、字典…

【Http协议③】http状态码,响应报头,响应正文等知识的学习

前言: 大家好,我是良辰丫,上一篇文章中我们已经学习了http请求的一些知识,这篇文章我将带领大家去领略http响应的风采,不要着急,跟随良辰的步伐,一起去学习http.💞💞💞 🧑个人主页:良辰针不戳 📖所属专栏&a…

单点登录二:登录过程使用摘要算法和加盐的意义以及demo练习

上一篇《springboot项目使用redis、springSecurity、jwt实现单点登录》写了关于单点登录的架子&#xff0c;但是没有实现密码验证的细节。这里使用盐和摘要算法来实现一个密码验证的完整过程demo。 1、依赖没变&#xff0c;还是上一篇内容那些 <dependencies><depen…

职称认定和职称评审有什么区别?甘建二告诉你

职称认定和评审有什么区别呢&#xff1f;通常大家都在说职称认定和评审不知道中间是不是有什么区别&#xff1f;今天甘建二给大家捋一捋&#xff1a; 一、职称认定 职称认定要求学历条件比较严苛的&#xff1a; 1.毕业专业与评审专业一致&#xff0c;不能跨专业认定&#xff0…

基于FPGA的自动曝光算法实现

1 概述 在机器视觉中&#xff0c;自动曝光&#xff08;Auto Exposure&#xff09;是很多成像设备的必备功能。所谓自动曝光&#xff0c;就是根据环境或拍摄物体照明强度自动调节图像传感器的曝光时间&#xff0c;使输出图像的平均灰度&#xff08;亮度&#xff09;保持在一个合…

redis安装和数据类型

关系型数据库和非关系型数据库的区别&#xff1a; ①存储结构不同&#xff0c;关系型数据库是二维表格的方式&#xff0c;非关系型数据库是键值对的形式&#xff08;文档、图文等&#xff09;&#xff1b; ②扩展方式不同&#xff0c;关系型数据库是纵向提升硬件性能&#xf…

嵌入式硬件中Printf函数的原理

作为嵌入式单片机领域小白的我&#xff0c;在查阅STM32、MSP432等串口通信的开发例程时&#xff0c; 总是能看到用 printf&#xff08;&#xff09;这个函数来进行串口的发送功能。 目录 有关printf&#xff08;&#xff09;函数需要解决的疑问&#xff1a; 一、printf&am…

34种ArcGIS常用操作技巧大汇总

概述 ArcGIS产品线为用户提供一个可伸缩的&#xff0c;全面的GIS平台。ArcObjects包含了许多的可编程组件&#xff0c;从细粒度的对象&#xff08;例如单个的几何对象&#xff09;到粗粒度的对象&#xff08;例如与现有ArcMap文档交互的地图对象&#xff09;涉及面极广&#x…

iperf3常用

iperf使用方法详解 iperf3是一款带宽测试工具&#xff0c;它支持调节各种参数&#xff0c;比如通信协议&#xff0c;数据包个数&#xff0c;发送持续时间&#xff0c;测试完会报告网络带宽&#xff0c;丢包率和其他参数。 安装 sudo apt-get install iperf3iPerf3常用的参数&am…

六、数据仓库详细介绍(ETL)方法篇

0x00 前言 上文我们把数据仓库类比我们人类自身&#xff0c;数据仓库“吃”进去的是原材料&#xff08;原始数据&#xff09;&#xff0c;经过 ETL 集成进入数据仓库&#xff0c;然后从 ODS 开始逐层流转最终供给到数据应用&#xff0c;整个数据流动过程中&#xff0c;在一些关…

【JAVAEE】Java中的文件基础

目录 1.文件 1.1什么是文件 1.2文件路径 2.Java中操作文件 File类中常见的属性 File类中常见的构造方法 File类中常见的方法 3.文件内容的读写---数据流 按字节进行数据读InputStream FileInputStream 按字节进行数据写OutputStream 按字符进行数据读FileReader 按…

【JavaSE】Java基础语法(一)

文章目录 1. ⛄常量2. ⛄数据类型2.1 &#x1f320;&#x1f320;计算机存储单元2.2 &#x1f320;&#x1f320;Java 中的数据类型 3. ⛄变量的注意事项4. ⛄键盘录入5. ⛄标识符 1. ⛄常量 常量&#xff1a;在程序运行过程中&#xff0c;其值不可以发生改变的量。 Java中的常…

2023年我要在深圳考CPDA数据分析师认证,含金量如何?

CPDA数据分析师认证是大数据方面的认证&#xff0c;助力数据分析人员打下扎实的数据分析基础知识功底&#xff0c;为入门数据分析保驾护航。 帮助数据分析人员掌握系统化的数据分析思维和方法论&#xff0c;提升工作效率和决策能力&#xff0c;遇到问题能够举一反三&#xff0c…

opencv图像灰度化

图像灰度化就是将图像的亮度值&#xff08;R,G,B&#xff09;按照一定的方式映射到0-255之间的灰度值上&#xff0c;为了使图像看起来不那么单调&#xff0c;需要将图像的亮度值进行变换。下面简单介绍下 opencv中的灰度化函数&#xff1a; 1、先将图像的像素值转换为R,G,B三个…

手机也可以搭建博客?安卓Termux+Hexo搭建属于你自己的博客网站 - 公网远程访问

文章目录 1. 安装 Hexo2. 安装cpolar内网穿透3. 公网远程访问4. 固定公网地址 Hexo 是一个用 Nodejs 编写的快速、简洁且高效的博客框架。Hexo 使用 Markdown 解析文章&#xff0c;在几秒内&#xff0c;即可利用靓丽的主题生成静态网页。 下面介绍在Termux中安装个人hexo博客并…

【Linux】信号集及相关函数(sigemptyset、sigfillset、sigprocmask)

目录 1、信号集2、自定义信号集相关函数3、sigprocmask函数函数解析代码举例 橙色 1、信号集 多个信号组成的一个集合称为信号集&#xff0c;其系统数据类型为 sigset_t 。 在 PCB 中有两个非常重要的信号集&#xff0c;一个称为“阻塞信号集”&#xff0c;另一个是“未决信号…

Charles 抓包工具下载安装及基础使用

在Charles抓包工具之前讲过了Fiddler抓包工具&#xff0c;在讲之前先来解决读者的该怎么读这两个单词&#xff08; Charles 读&#xff1a;雀奥斯 和 Fiddler 读&#xff1a;非的了 &#xff09;&#xff0c;下面进入正题&#xff0c;有使用过抓包工具的或者看过之前关于Fiddle…

leecode530—二叉搜索树的最小绝对差

leecode530 二叉搜索树的最小绝对差 &#x1f50e;首先要知道二叉搜索树是有序的&#xff0c;补充一下二叉搜索树的相关概念。 &#x1f7e0; 对于 BST 的每一个节点 node&#xff0c;左子树节点的值都比 node 的值要小&#xff0c;右子树节点的值都比 node 的值大。 &#x1f…

数据分析笔记:基本概念,常用图表,报告大纲

1.数据分析 1.1定义 对数据进行分析。数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。在实际工作中&#xff0c;帮助管理者判断和决策。 1.2步骤 数据分析的基本步骤包括明确思路&#xff0c;制定计划、数据收集、数据处理、数据分析、数据显…

chatgpt赋能Python-python_kanren

Python Kanren&#xff1a;一种强大的逻辑编程工具 Python Kanren是一种基于Python的逻辑编程工具&#xff0c;它可以帮助开发人员轻松地构建复杂的逻辑应用程序。如果您正在寻找一种可以帮助您更快地开发和测试逻辑代码的工具&#xff0c;那么Python Kanren绝对是一个不错的选…