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

html+css 实现hover 3D按钮特效

前言:哈喽,大家好,今天给大家分享html+css 绚丽效果!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕

目录

  • 一、效果
  • 二、原理解析
    • 1.这是一个,hover 3D悬浮的按钮效果。每个按钮都是由5部分组成,a,a:before,a:after,i,span如下图。
    • 2.当按钮上有鼠标时,hover效果触发,运行==transition过渡动画==和其他属性变化效果。
    • 3.具体的变换参数,直接==看代码==,可以一键复制,查看效果
  • 三、上代码,可以直接复制使用
    • 目录
    • html
    • css

一、效果

html+css 实现hover 3D按钮特效效果

二、原理解析

1.这是一个,hover 3D悬浮的按钮效果。每个按钮都是由5部分组成,a,a:before,a:after,i,span如下图。

按钮组成

2.当按钮上有鼠标时,hover效果触发,运行transition过渡动画和其他属性变化效果。

/*当hover时*/
a:hover {transform: rotate(-30deg) skew(25deg) translate(20px, -15px);box-shadow: -50px 50px 50px rgba(0, 0, 0, 0.5);
}a:hover .iconfont {color: #fff;
}a:hover span {color: #fff;
}a:hover {background: #dd4b39;
}a:hover:before {background: #b33a2b;
}a:hover:after {background: #e66a5a;
}

3.具体的变换参数,直接看代码,可以一键复制,查看效果

三、上代码,可以直接复制使用

目录

目录

html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>html+css 实现hover 3D按钮特效</title><link rel="stylesheet" href="https://at.alicdn.com/t/c/font_4646876_7vpdpyxzi9o.css"><link rel="stylesheet" href="./style.css">
</head>
<body>
<div class="container"><h1 style="text-align: center;color:#fff;margin-bottom: 50px;padding-top: 50px; text-shadow: 0 3px 3px #4c6ed3;">html+css 实现hover 3D按钮特效</h1><div class="wrapper"><a href="#"><i class="iconfont">&#xe63b;</i><span>-求点赞</span></a><a href="#"><i class="iconfont">&#xe621;</i><span>-求关注</span></a><a href="#"><i class="iconfont">&#xe627;</i><span>-求收藏</span></a><a href="#"><i class="iconfont">&#xe628;</i><span>-求转发</span></a></div>
</div></body>
</html>

css

* {margin: 0;padding: 0;box-sizing: border-box;
}:root {--btn-bg-color: #fff;--font-color-black: #000;--btn-bg-color-hover: #FF5833;
}.container {min-height: 100vh;background-color: #CCCCCC;
}.wrapper {margin-top: 150px;display: flex;flex-direction: row;justify-content: center;align-items: center;gap: 40px;
}a .iconfont {font-size: 40px;color: #333;line-height: 80px;transition: 0.5s;padding-right: 14px;
}a span {padding: 0;margin: 0;position: absolute;top: 30px;color: #333;letter-spacing: 4px;transition: 0.5s;
}a {text-decoration: none;position: relative;display: block;width: 210px;height: 80px;background: #fff;text-align: left;padding-left: 20px;transform: rotate(-30deg) skew(25deg) translate(0, 0);transition: 0.5s;box-shadow: -20px 20px 10px rgba(0, 0, 0, 0.5);
}a:before {content: '';position: absolute;top: 10px;left: -20px;height: 100%;width: 20px;background: #b1b1b1;transform: 0.5s;transform: rotate(0deg) skewY(-45deg);
}a:after {content: '';position: absolute;bottom: -20px;left: -10px;height: 20px;width: 100%;background: #b1b1b1;transform: 0.5s;transform: rotate(0deg) skewX(-45deg);
}/*当hover时*/
a:hover {transform: rotate(-30deg) skew(25deg) translate(20px, -15px);box-shadow: -50px 50px 50px rgba(0, 0, 0, 0.5);
}a:hover .iconfont {color: #fff;
}a:hover span {color: #fff;
}a:hover {background: #dd4b39;
}a:hover:before {background: #b33a2b;
}a:hover:after {background: #e66a5a;
}

到此这篇文章就介绍到这了,更多精彩内容请关注本人以前的文章或继续浏览下面的文章,创作不易,如果能帮助到大家,希望大家多多支持宝码香车~💕

整理不易,点赞关注宝码香车

更多专栏订阅推荐:
👍 html+css+js 绚丽效果
💕 vue
✈️ Electron
⭐️ js
📝 字符串
✍️ 时间对象(Date())操作

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 王道数据结构 | 第五章 树与二叉树【未完成】
  • ubuntu 20.04 右键新建空白文档;输入即定位文件或文件夹,而非出现搜索框
  • 0813,引用,函数重载,内存布局叭叭叭
  • C++的内存管理是怎样的?
  • 最小二乘法求拟合曲线(中线)的斜率和截距:数据背后的温柔对话
  • Python实例化指南之对象创建与初始化的实用技巧详解
  • 前端踩坑DOMException: Failed to execute ‘querySelector‘ on ‘Document‘: ‘#091.....‘
  • MySQL的InnoDB的页里面存了些什么 --InnoDB存储梳理(三)
  • .NET 8 跨平台高性能边缘采集网关
  • leetcode日记(72)最大矩形
  • 一文彻底搞懂Transformer - 总体架构
  • 后端开发学习路线
  • 蜂鸣器(51单片机)
  • 苹果微信不小心卸载了怎么恢复聊天记录?4招轻松解决
  • GPT-5:未来已来,你准备好了吗
  • 【Leetcode】101. 对称二叉树
  • Android单元测试 - 几个重要问题
  • bearychat的java client
  • Computed property XXX was assigned to but it has no setter
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • JavaScript服务器推送技术之 WebSocket
  • JavaScript异步流程控制的前世今生
  • MySQL主从复制读写分离及奇怪的问题
  • Python爬虫--- 1.3 BS4库的解析器
  • Spring-boot 启动时碰到的错误
  • 初识MongoDB分片
  • 关于 Cirru Editor 存储格式
  • 爬虫模拟登陆 SegmentFault
  • 前嗅ForeSpider中数据浏览界面介绍
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • Nginx实现动静分离
  • #、%和$符号在OGNL表达式中经常出现
  • #Linux(帮助手册)
  • #我与Java虚拟机的故事#连载15:完整阅读的第一本技术书籍
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • (10)ATF MMU转换表
  • (C#)一个最简单的链表类
  • (Forward) Music Player: From UI Proposal to Code
  • (Mirage系列之二)VMware Horizon Mirage的经典用户用例及真实案例分析
  • (rabbitmq的高级特性)消息可靠性
  • (独孤九剑)--文件系统
  • (十一)JAVA springboot ssm b2b2c多用户商城系统源码:服务网关Zuul高级篇
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • .gitignore文件设置了忽略但不生效
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划
  • .Net Redis的秒杀Dome和异步执行
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .net(C#)中String.Format如何使用
  • .Net6支持的操作系统版本(.net8已来,你还在用.netframework4.5吗)
  • .Net中间语言BeforeFieldInit
  • .vimrc php,修改home目录下的.vimrc文件,vim配置php高亮显示
  • [ Linux 长征路第二篇] 基本指令head,tail,date,cal,find,grep,zip,tar,bc,unname
  • []C/C++读取串口接收到的数据程序