使用HTML+Css+transform实现3D导航栏的示例代码


Posted in HTML / CSS onMarch 31, 2021

3D是three-dimensional的缩写,就是三维图形。在计算机里显示3D图形,就是说在平面里显示三维图形。不像现实世界里,真实的三维空间,有真实的距离空间。计算机里只是看起来很像真实世界,因此在计算机显示的3D图形,就是让人眼看上就像真的一样。人眼有一个特性就是近大远小,就会形成立体感。

计算机屏幕是平面二维的,我们之所以能欣赏到真如实物般的三维图像,是因为显示在计算机屏幕上时色彩灰度的不同而使人眼产生视觉上的错觉,而将二维的计算机屏幕感知为三维图像。基于色彩学的有关知识,三维物体边缘的凸出部分一般显高亮度色,而凹下去的部分由于受光线的遮挡而显暗色。这一认识被广泛应用于网页或其他应用中对按钮、3D线条的绘制。比如要绘制的3D文字,即在原始位置显示高亮度颜色,而在左下或右上等位置用低亮度颜色勾勒出其轮廓,这样在视觉上便会产生3D文字的效果。具体实现时,可用完全一样的字体在不同的位置分别绘制两个不同颜色的2D文字,只要使两个文字的坐标合适,就完全可以在视觉上产生出不同效果的3D文字。

案例

3D导航栏

效果:

<style>
   * {
     margin: 0;
     padding: 0;
   }
   ul {
     margin: 100px ;
   }
   ul li {
     width: 120px;
     height: 35px;
     list-style: none;
     perspective: 500px;
     float: left;
     margin: 0 5px;
   }
   .box {
     width: 100%;
     height: 100%;
     position: relative;
     transform-style: preserve-3d;
     transition: all .3s;
   }
   .box:hover{
     transform: rotateX(90deg);
   }
   .front,
   .bottom {
     width: 100%;
     height: 100%;
     position: absolute;
     top: 0;
     left: 0;
     display: flex;
     justify-content: center;
     align-items: center;
   }
   .front{
     background-color: pink;
     transform: translateZ(17.5px);
   }
   .bottom{
     background-color: teal;
     /* transform-origin: center bottom; */
     transform:translateY(17.5px) rotateX(-90deg);
   }
 </style>
<body>
  <ul>
    <li>
      <div class="box">
        <div class="front">天</div>
        <div class="bottom">地</div>
      </div>
    </li>
    <li>
      <div class="box">
        <div class="front">天</div>
        <div class="bottom">地</div>
      </div>
    </li>
 ...
  </ul>
</body>

使用HTML+Css+transform实现3D导航栏的示例代码

到此这篇关于使用HTML+Css+transform实现3D导航栏的示例代码的文章就介绍到这了,更多相关HTML transform实现3D导航栏内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
让IE6、IE7、IE8支持CSS3的脚本
Jul 20 HTML / CSS
分享30个新鲜的CSS3打造的精美绚丽效果(附演示下载)
Dec 28 HTML / CSS
css3使网页、图片变成灰色兼容大多数浏览器
Jul 02 HTML / CSS
css3 transform过渡抖动问题解决
Oct 23 HTML / CSS
HTML5实现Notification API桌面通知功能
Mar 02 HTML / CSS
基于HTML5 Canvas 实现商场监控实例详解
Nov 20 HTML / CSS
HTML5 visibilityState属性详细介绍和使用实例
May 03 HTML / CSS
HTML5中的音频和视频媒体播放元素小结
Jan 29 HTML / CSS
HTML5+CSS3绘制锯齿状的矩形
Mar 01 HTML / CSS
详解如何通过H5(浏览器/WebView/其他)唤起本地app
Dec 11 HTML / CSS
如何使用canvas绘制可移动网格的示例代码
Dec 14 HTML / CSS
原生CSS实现文字无限轮播的通用方法
Mar 30 HTML / CSS
z-index不起作用
Mar 31 #HTML / CSS
元素水平垂直居中的方式
Mar 31 #HTML / CSS
简单介绍 http请求响应参数、无连接无状态、MIME、状态码、端口、telnet、curl
简单实现一个手持弹幕功能+文字抖动特效
HTML基础-标签分类(闭合标签,空标签,块级元素,行内元素,行级块元素,可替换元素)
Mar 31 #HTML / CSS
Web前端:CSS最强总结 附详细代码
血轮眼轮回眼特效 html+css
You might like
如何对PHP程序中的常见漏洞进行攻击
2006/10/09 PHP
PHP7之Mongodb API使用详解
2015/12/26 PHP
浅谈Laravel队列实现原理解决问题记录
2017/08/19 PHP
PHP中使用mpdf 导出PDF文件的实现方法
2018/10/22 PHP
利用PHP如何统计Nginx日志的User Agent数据
2019/03/06 PHP
php如何把表单内容提交到数据库
2019/07/08 PHP
php7下的filesize函数
2019/09/30 PHP
jquery DIV撑大让滚动条滚到最底部代码
2013/06/06 Javascript
Jquery中request和request.form和request.querystring的区别
2015/11/26 Javascript
基于angular中的重要指令详解($eval,$parse和$compile)
2016/10/21 Javascript
js图片延迟加载(Lazyload)三种实现方式
2017/03/01 Javascript
ES6新特性之类(Class)和继承(Extends)相关概念与用法分析
2017/05/24 Javascript
详解vue 模版组件的三种用法
2017/07/21 Javascript
详谈js原型继承的一些问题
2017/09/06 Javascript
微信小程序实现横向增长表格的方法
2018/07/24 Javascript
react+ant design实现Table的增、删、改的示例代码
2018/12/27 Javascript
面试题:react和vue的区别分析
2019/04/08 Javascript
手把手教你 CKEDITOR 4 扩展插件制作
2019/06/18 Javascript
详解Vue中组件传值的多重实现方式
2019/08/16 Javascript
浅谈监听单选框radio改变事件(和layui中单选按钮改变事件)
2019/09/10 Javascript
vue中实现点击按钮滚动到页面对应位置的方法(使用c3平滑属性实现)
2019/12/29 Javascript
Vue数字输入框组件使用方法详解
2020/02/10 Javascript
[54:41]2018DOTA2亚洲邀请赛3月30日 小组赛B组 VGJ.T VS paiN
2018/03/31 DOTA
[56:17]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第三场 8.22
2019/09/05 DOTA
Django中模版的子目录与include标签的使用方法
2015/07/16 Python
使用Python对Csv文件操作实例代码
2017/05/12 Python
django框架自定义用户表操作示例
2018/08/07 Python
使用python写的opencv实时监测和解析二维码和条形码
2019/08/14 Python
Python异步编程之协程任务的调度操作实例分析
2020/02/01 Python
python3操作注册表的方法(Url protocol)
2020/02/05 Python
如何使用python切换hosts文件
2020/04/29 Python
Selenium获取登录Cookies并添加Cookies自动登录的方法
2020/12/04 Python
安全生产月标语
2014/10/07 职场文书
幼儿园小班个人工作总结
2015/02/12 职场文书
Nginx的rewrite模块详解
2021/03/31 Servers
测量JavaScript函数的性能各种方式对比
2021/04/27 Javascript