CSS技巧专栏:一日一例 4.纯CSS实现两款流光溢彩的酷炫按钮特效

news2024/9/20 22:53:32

大家好,今天是 CSS技巧专栏:一日一例 第三篇《纯CSS实现两款流光溢彩的酷炫按钮特效》

先看图:

特此说明:

本专题专注于讲解如何使用CSS制作按钮特效。前置的准备工作和按钮的基本样式,都在本专栏第一篇文章中又详细说明。自本专栏第四篇文章起,本专栏都将直接跳过前面的内容,不再重复复制,需要了解按钮基础样式的同学,请移步:《CSS技巧 - 一日一例 (1):会讨好的热情按钮》。

第一步:基本页面布局

<div class="container">
      <button class="base">流光溢彩</button>
      <button class="base">边框流光溢彩</button>
</div> 

第二步:按钮基本样式

第三步:按钮渐变色的填充 和 动画

给按钮写渐变色填充,写下按钮需要的样式:

.button-primary {
  position: relative;
  border: transparent;
  outline: transparent;
  color: #fff;
  background: linear-gradient(45deg, #fb0094, #0000ff, #00ff00, #ffff00, #ff0000, #fb0094, #0000ff, #00ff00, #ffff00, #ff0000,#fb0094);
  background-size: 500%;
  animation: animate 20s linear infinite;   
}

@keyframes animate {
  0% {
    background-position: 0 0;
  }
  50% {
    background-position: 300% 0;
  }
  100% {
    background-position: 0 0;
  }
}

然后,我们别忘了把这个类加到html代码中哦!

<div class="container">
      <button class="base btn-primary">流光溢彩</button>
      <button class="base btn-primary">边框流光溢彩</button>
</div> 

在浏览器预览按钮效果:

第四步:给按钮文字增加阴影

text-shadow: -1px -1px 0px rgba(0,0,0,0.3),1px 1px 0px rgba(255,255,255,0.3);

本例在文本上做了两个阴影:

  1. 阴影1:在x轴和Y轴各向前1像素偏移(向上,向左),模糊为0,颜色为黑色,透明度30%
  2. 阴影2:在x轴和Y轴各向后1像素偏移(向下,向右),模糊为0,颜色为白色,透明度30%

通过这两个文字阴影,给按钮上的文字增加了一个向下凹陷的效果。如图:

第五步:给按钮增加彩色的光

经过上一篇的案例:CSS技巧专栏:一日一例 3.纯CSS实现炫酷多彩按钮特效 我们已经知道,只要给彩色渐变增加blur滤镜,我们就可以得到一个扩散的模糊的炫彩的光。按照昨天的思路,我们就可以实现炫光效果:

.button-primary:before, .button-primary:after {
    content: "";
    position: absolute;   
    border-radius: 2rem; 
    top: -2px;
    left: -2px;
    background: linear-gradient(45deg, #fb0094, #0000ff, #00ff00, #ffff00, #ff0000, #fb0094, #0000ff, #00ff00, #ffff00, #ff0000,#fb0094);
    background-size: 500%;
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    z-index: -1;
    animation: animate 20s linear infinite;
  }
.button-primary:after {
    filter: blur(20px);
}

到这里,按钮其实已经很炫了!

对了,还要给右边的按钮增加一个黑色蒙版。

.btn_mask{
  top:-1px;
  left: -1px;
  background: var(--main-bg-color);
  transition: all .5s;
}
<div class="container">
      <button class="base button-primary" >流光溢彩</button>
      <button class="base button-primary btn_mask" >边框流光溢彩</button>
</div>  

第六步:添加鼠标响应动画

相对前一篇的按钮,这一篇我们的按钮交互也没有难度,接下来我们给两个按钮分别增加一些交互。

.btn_mask:hover{
  background: rgba(17, 17, 17, 0.5);
  transition: all .5s;
}

接下来,还是留个小作业!

我对上述代码做了小小的修改,实现的按钮如图:

感兴趣的同学可以自己动手复原一下!

好啦,今天的教程:《纯CSS实现炫酷多彩按钮》到这里就结束了,希望对可爱漂亮又富有爱心的你有所帮助!嘿嘿,别忘了,给我点赞+关注+评论哦!我在下面等你。。咳咳。。。下面评论区等你!

本专栏其他文章:

CSS技巧 - 一日一例 (1):会讨好的热情按钮

CSS技巧专栏:一日一例 2.纯CSS实现 多彩边框按钮特效

CSS技巧专栏:一日一例 3.纯CSS实现炫酷多彩按钮特效

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

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

相关文章

k8s集群部署mysql8主备

一、搜索mysql8版本 # helm search repo mysql# helm pull bitnami/mysql --version:11.1.2# tar -zxf mysql-11.1.2.tgz# cd mysql 二、修改value.ysqml文件 动态存储类自己提前搭建。 # helm install mysql8 -n mysql-cluster ./ -f values.yaml NAME: mysql8 LAST DEPLOYED…

Java | Leetcode Java题解之第221题最大正方形

题目&#xff1a; 题解&#xff1a; class Solution {public int maximalSquare(char[][] matrix) {int maxSide 0;if (matrix null || matrix.length 0 || matrix[0].length 0) {return maxSide;}int rows matrix.length, columns matrix[0].length;int[][] dp new in…

【视频】R语言广义加性模型GAMs非线性效应、比较分析草种耐寒性实验数据可视化

全文链接&#xff1a;https://tecdat.cn/?p36979 原文出处&#xff1a;拓端数据部落公众号 广义加法模型&#xff08;Generalized Additive Models, GAMs&#xff09;作为一种高度灵活的统计工具&#xff0c;显著扩展了广义线性模型&#xff08;Generalized Linear Models, …

【zabbix7】开启HTTP authentication实现单点登录

开启HTTP authentication实现单点登录 一、新建http验证用户 htpasswd -c /etc/nginx/.htpasswd another_username # 在提示中输入密码二、新建Nginx配置文件 把zabbix.conf拷贝一份&#xff0c;然后修改listen监听的端口。 cp zabbx.conf zabbix_http.conf 每个location中新…

【鸿蒙学习笔记】元服务

官方文档&#xff1a;元服务规格 目录标题 什么是元服务特征第一个元服务-案例介绍创建项目源码启动模拟器启动entry创建卡片出发元服务 什么是元服务 特征 免安装分包预加载老化和更新机制 第一个元服务-案例介绍 创建项目 源码 Entry Component struct WidgetCard {buil…

OWASP ZAP

OWASP ZAP简介 开放式Web应用程序安全项目&#xff08;OWASP&#xff0c;Open Web Application Security Project&#xff09;是一个组织&#xff0c;它提供有关计算机和互联网应用程序的公正、实际、有成本效益的信息。ZAP则是OWASP里的工具类项目&#xff0c;也是旗舰项目&a…

Postman:Body类型中的x-www-from-urlencoded参数可以接受GET请求吗?

不可以 今天学习Spring Web MVC&#xff0c;在借助Postman学习 RequestMapping 注解时&#xff0c;发现Body类型中的x-www-from-urlencoded参数不支持GET请求。 按理说 RequestMapping 注解可以支持全部类型的请求&#xff0c;但为何在这里不能支持GET请求呢&#xff1f; 以下是…

Docker 基本管理及部署

目录 1.Docker概述 1.1 Docker是什么&#xff1f; 1.2 Docker的宗旨 1.3 容器的优点 1.4 Docker与虚拟机的区别 1.5 容器在内核中支持的两种技术 1.6 namespace的六大类型 2.Docker核心概念 2.1 镜像 2.2 容器 2.3 仓库 3.安装Docker 3.1 查看 docker 版本信息 4.…

Hvv工具推荐——IWannaGetAll

OA基本上是每次hvv中都会被突破的&#xff0c;基本上也都会爆出各种各样的0day&#xff0c;如果真的0day防不住&#xff0c;那我们必须要把1day、nday做一遍检查。 IWannaGetAll 是一款专门针对主流OA&#xff08;办公自动化&#xff09;系统的漏洞检测和利用工具。 IWannaGe…

C# WinForm —— 37 TabControl 控件介绍

1. 简介 管理一个TabPages集合的控件&#xff0c;也是一个分组控件 如果一个模块有多个子页面&#xff0c;可以使用TabControl控件进行页面切换 2. 属性 属性解释(Name)控件ID&#xff0c;在代码里引用的时候会用到Enabled控件是否启用Alignment确定选项卡是否显示在控件的…

每日刷题(二分图,二分查找,dfs搜索)

目录 1.P3853 [TJOI2007] 路标设置 2.P1129 [ZJOI2007] 矩阵游戏 3.P1330 封锁阳光大学 4.Trees 5.P1141 01迷宫 1.P3853 [TJOI2007] 路标设置 P3853 [TJOI2007] 路标设置 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 先求出每个路标之间的距离&#xff0c;再二分查找每…

渔人杯——RE

贪吃蛇的秘密 修改代码后&#xff0c;报了一个错 # uncompyle6 version 3.9.1 # Python bytecode version base 3.7.0 (3394) # Decompiled from: Python 3.11.8 (tags/v3.11.8:db85d51, Feb 6 2024, 22:03:32) [MSC v.1937 64 bit (AMD64)] # Embedded file name: snake1.py…

渐变且描边文字

效果&#xff1a; 用 background-image&#xff1a;linear-gradient实现渐变、 text-shadow实现描边 元素同时添加&#xff1a; background-image: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(143, 180, 253, 1));-webkit-background-clip: text;background-…

笔记本电脑数据丢失如何恢复?

在计算机网络日益普及的今天&#xff0c;计算机已波及到人们的生活、工作、学习及消费等广泛领域&#xff0c;其服务和管理也涉及政府、工商、金融及用户等诸多方面。笔记本电脑等电子产品被各行各业的人所喜爱和接受&#xff0c;早已成为人们出差的必备品&#xff0c;可以用来…

彻底解决找不到d3dcompiler_43.dll问题,总结几种有效的方法

运行软件时提示找不到d3dcompiler_43.dll无法继续执行代码&#xff0c;如何解决&#xff1f;解决这个问题的方法有很多&#xff0c;但具体问题需要具体分析&#xff0c;有些方法可能并不适用于解决d3dcompiler_43.dll的问题。因此&#xff0c;需要根据实际情况来选择合适的方法…

【LeetCode:1071. 字符串的最大公因子 + 模拟 + 最大公约数】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

【全面介绍Oracle】

🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步! 目录 🎥前言🎥基本概念和安装🎥SQL语言🎥PL/SQL编程🎥数据库…

基于webpack创建plugin并发布npm包

webpack 1. 什么是webpack webpack是一个模块化打包工具&#xff0c; 可以将零散的js文件打包到一个js文件中可以使用loader对对模块的源代码进行转换 再打包可以支持载入任何类型的文件有代码拆解能力 2.webpack中有两个重要的概念 loader: loader 让 webpack 能够去处理…

paddla模型转gguf

在使用ollama配置本地模型时&#xff0c;只支持gguf格式的模型&#xff0c;所以我们首先需要把自己的模型转化为bin格式&#xff0c;本文为paddle&#xff0c;onnx&#xff0c;pytorch格式的模型提供说明&#xff0c;safetensors格式比较简单请参考官方文档&#xff0c;或其它教…

Tomcat优化和动静分离

Tomcat优化和动静分离 一、Tomcat优化 Tomcat&#xff1a;自身优化、内核优化和jvm优化 tomcat的并发处理能力不强&#xff0c;大项目一般不使用tomcat作为转发的中间件&#xff08;k8s集群、Python、rubby&#xff09;&#xff0c;小项目会使用&#xff08;内部使用&#x…