前言:哈喽,大家好,今天给大家分享html+css 绚丽效果!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕
目录
- 一、效果
- 二、原理解析
- 1.这是一个,hover翻转按钮的效果。这其实是用==一个元素==实现的。每个按钮添加了伪元素before和after所以是由3部分组成,a,a:before,a:after,如下图。
- 1.1 重要点1:
- 1.2 重要点2:
- 1.3 按钮组成关系。
- 2.当按钮上有鼠标时,hover效果触发,运行==transition过渡动画==效果。
- 3.具体的变换参数,直接==看代码==,可以一键复制,查看效果
- 三、上代码,可以直接复制使用
- 目录
- html
- css
一、效果
二、原理解析
1.这是一个,hover翻转按钮的效果。这其实是用一个元素实现的。每个按钮添加了伪元素before和after所以是由3部分组成,a,a:before,a:after,如下图。
<a class="overturnBut" data-back="求点赞" data-front="求点赞"></a>
1.1 重要点1:
content
伪元素before和after的content是采用了属性变量 content: attr(data-front);
和content: attr(data-back);
所以看上去像2个元素。
1.2 重要点2:
transform
before元素transform: translateY(0) rotateX(0);
正常没有变化
after元素 transform: translateY(-50%) rotateX(90deg);
后移(y轴后移50%)、旋转90度,相当于不显示了。
1.3 按钮组成关系。
2.当按钮上有鼠标时,hover效果触发,运行transition过渡动画效果。
/*当hover时*/
.overturnBut:hover:after {opacity: 1;transform: translateY(0) rotateX(0);
}
.overturnBut:hover:before {/*opacity: 0;*/transform: translateY(50%) rotateX(90deg);
}
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 翻转按钮</title><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 翻转按钮</h1><div class="wrapper"><a class="overturnBut" data-back="求点赞" data-front="求点赞"></a><a class="overturnBut" data-back="求关注" data-front="求关注"></a><a class="overturnBut" data-back="求收藏" data-front="求收藏"></a><a class="overturnBut" data-back="求转发" data-front="求转发"></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: #0e1538;
}
.wrapper {margin-top: 130px;display: flex;flex-direction: column;justify-content: center;align-items: center;gap: 40px;
}.overturnBut{opacity: 1;outline: 0;color: #fff;line-height: 40px;position: relative;text-align: center;letter-spacing: 1px;display: inline-block;text-decoration: none;font-family: "微软雅黑";font-weight: 700;text-transform: uppercase;
}.overturnBut:before {top: 0;left: 0;opacity: 1;color: #adadaf;display: block;padding: 0 30px;line-height: 40px;transition: 0.5s;position: relative;background: #323237;content: attr(data-front);transform: translateY(0) rotateX(0);
}.overturnBut:after {top: 0;left: 0;opacity: 0;width: 100%;color: #323237;display: block;transition: 0.5s;position: absolute;background: #adadaf;content: attr(data-back);transform: translateY(-50%) rotateX(90deg);
}/*当hover时*/
.overturnBut:hover:before {/*opacity: 0;*/transform: translateY(50%) rotateX(90deg);
}.overturnBut:hover:after {opacity: 1;transform: translateY(0) rotateX(0);
}
到此这篇文章就介绍到这了,更多精彩内容请关注本人以前的文章或继续浏览下面的文章,创作不易,如果能帮助到大家,希望大家多多支持宝码香车~💕
更多专栏订阅推荐:
👍 html+css+js 绚丽效果
💕 vue
✈️ Electron
⭐️ js
📝 字符串
✍️ 时间对象(Date())操作