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

炫酷3D按钮

一.预览


        该样式有一种3D变换的高级感,大家可以合理利用这些样式到自己的按钮上 

二.代码

<!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>/* 通用样式设置,包括盒模型和基础字体 */* {box-sizing: border-box;}body, html {height: 100%;width: 100%;margin: 0;font-family: Arial, sans-serif;overflow: hidden;}/* 按钮容器样式,居中显示 */.container {width: 680px;margin: 0 auto;}/* 基础按钮样式设置 */.btn {border: none;position: relative;background: none;padding: 28px 90px;text-transform: uppercase;margin: 30px;color: inherit;letter-spacing: 2px;font-size: 1em;outline: none;transition: all 0.4s;cursor: pointer;}/* 3D效果实现前的准备,让该伪元素能够被遮挡*/.btn::after {content: "";position: absolute;z-index: -1;transition: all 0.4s;}/* 设置3D透视效果 */.btn-perspective {perspective: 800px;display: inline-block;}/* 基础3D按钮样式 */.btn-3d {transform-style: preserve-3d;}/* 第一个按钮的颜色和3D效果设置 */.btn-one {background-color: #E74C3C;}.btn-one::after {background-color: #621e16; /* 按钮下方的暗色阴影 */transform: rotateX(90deg); /* 初始旋转状态 */}.btn-one:hover {transform: rotateX(-45deg); /* 鼠标悬停时的旋转 */}/* 其他按钮的样式设置遵循相似的模式,改变颜色和旋转轴 *//* 第二个按钮样式 */.btn-two {background-color: pink;}.btn-two::after {background-color: rgb(130, 56, 69);transform: rotateX(-90deg);}.btn-two:hover {transform: rotateX(45deg);}/* 第三个按钮样式 */.btn-three {background-color: aqua;}.btn-three::after {background-color: rgb(26, 131, 131);transform: rotateY(-90deg);}.btn-three:hover {transform: rotateY(25deg);}/* 第四个按钮样式 */.btn-four {background-color: orange;}.btn-four::after {background-color: rgb(112, 78, 14);transform: rotateY(90deg);}.btn-four:hover {transform: rotateY(-25deg);}</style>
</head>
<body><div class="container"><!-- 每个按钮都包裹在具有3D透视效果的容器中 --><div class="btn-perspective"><button class="btn btn-3d btn-one">财</button></div><div class="btn-perspective"><button class="btn btn-3d btn-two">神</button></div><div class="btn-perspective"><button class="btn btn-3d btn-three">到</button></div><div class="btn-perspective"><button class="btn btn-3d btn-four">了</button></div></div>
</body>
</html>

 三.总结

        这个按钮的亮点就是灵活使用了3D变换的相关知识,比如变换原点,设置景深,3D旋转等,会了其中一个便可以举一反三,期待大家的修改指正。 

相关文章:

  • λ-矩阵知识点
  • 酷开科技荣获消费者服务平台黑猫投诉“消费者服务之星”称号
  • Swift Combine 级联多个 UI 更新,包括网络请求 从入门到精通十六
  • 《UE5_C++多人TPS完整教程》学习笔记4 ——《P5 局域网连接(LAN Connection)》
  • re:从0开始的CSS之旅 13. 文档流
  • VueCLI核心知识综合案例TodoList
  • Android 自定义BaseFragment
  • Panalog 日志审计系统 sessiptbl.php 前台RCE漏洞复现
  • 蓝桥杯(Web大学组)2022国赛真题:水果消消乐
  • Python学习之路-爬虫进阶:爬虫框架雏形
  • 构建智慧交通平台:架构设计与实现
  • Python爬虫——解析库安装(1)
  • 【操作系统】Ubuntu Swap内存扩容
  • 【30秒看懂大数据】数据标准
  • AlmaLinux更换鼠标样式为Windows样式
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • angular2 简述
  • angular学习第一篇-----环境搭建
  • angular组件开发
  • CSS 提示工具(Tooltip)
  • CSS盒模型深入
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • HTTP那些事
  • IndexedDB
  • isset在php5.6-和php7.0+的一些差异
  • Javascript弹出层-初探
  • JS变量作用域
  • mysql_config not found
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • vue-router的history模式发布配置
  • 探索 JS 中的模块化
  • 消息队列系列二(IOT中消息队列的应用)
  • 小而合理的前端理论:rscss和rsjs
  • 小试R空间处理新库sf
  • 云大使推广中的常见热门问题
  • ionic入门之数据绑定显示-1
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • "无招胜有招"nbsp;史上最全的互…
  • ###C语言程序设计-----C语言学习(6)#
  • #pragma预处理命令
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (附源码)计算机毕业设计SSM教师教学质量评价系统
  • (七)c52学习之旅-中断
  • (终章)[图像识别]13.OpenCV案例 自定义训练集分类器物体检测
  • (转)EXC_BREAKPOINT僵尸错误
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • ****Linux下Mysql的安装和配置
  • .gitignore
  • .net Application的目录
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .NET 事件模型教程(二)
  • .net中生成excel后调整宽度
  • @column注解_MyBatis注解开发 -MyBatis(15)
  • [ C++ ] STL priority_queue(优先级队列)使用及其底层模拟实现,容器适配器,deque(双端队列)原理了解