CSS按钮-跑马灯边框

news2024/11/20 6:23:49


请添加图片描述


思路很简单,实现方法有很多很多。但是大体思路与实现方法都类似:渐变色 + 动画,主要区别在动画的具体实现

0、HTML 结构

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>流光按钮</title>
</head>
<body>
  <div class="wrapper">
    <div class="btn">按钮</div>
  </div>
</body>
</html>

1-1、CSS 实现一

<style>
  *{
    padding: 0;
    margin: 0;
  }
  @property --rotate{
    syntax: "<angle>";
    initial-value: 20deg;
    inherits: false;
  }
  body{
    background-color: rgba(243, 243, 243);
  }
  .wrapper{
    position: relative;
    padding: 50px;
    background-color: rgb(0, 0, 0);
    z-index: -4;
    height: 500px;
  }
  .wrapper .btn{
    overflow: hidden;
    position: relative;
    text-align: center;
    border-radius: 7px;
    width: 100px;
    height: 50px;
    line-height: 50px;
    font-size: 22px;
    color: white;
    user-select: none;
    margin: 50px auto;
  }
  .btn::before{
    position: absolute;
    border-radius: 7px;
    content: "";
    inset: -20px;
    background: linear-gradient(var(--rotate), transparent 1%, rgb(255, 0, 191) , #00b7ff,  rgba(255, 0, 34, 0.719), transparent 98%);
    transform-origin: bottom left;
    z-index: -2;
    transition: all .4;
    animation: spin 2.4s linear infinite;
    transform-origin: 50% 50%;
  }
  .btn::after{
    content: "";
    position: absolute;
    border-radius: 8px;
    background-color: rgb(41, 41, 41);
    inset: 3px;
    z-index: -1;
  }

  @keyframes spin {
    0%{
      --rotate: 0deg;
    }
    100%{
      --rotate: 360deg;
    }
  }
</style>

1-2、CSS 实现二

  <style>
    *{
      padding: 0;
      margin: 0;
    }
    body{
      background-color: rgba(243, 243, 243);
    }
    .wrapper{
      position: relative;
      padding: 50px;
      background-color: rgb(0, 0, 0);
      z-index: -4;
      height: 500px;
    }

    .wrapper .btn{
      overflow: hidden;
      position: relative;
      text-align: center;
      border-radius: 7px;
      width: 100px;
      height: 50px;
      line-height: 50px;
      font-size: 22px;
      color: white;
      user-select: none;
      margin: 50px auto;
    }

    .btn::before{
      position: absolute;
      border-radius: 7px;
      content: "";
      inset: -20px;
      background: linear-gradient(0deg, transparent 1%, rgb(255, 0, 191) , #00b7ff,  rgba(255, 0, 34, 0.719), transparent 98%);
      transform-origin: bottom left;
      z-index: -2;
      transition: all .4;
      animation: spin 2.4s linear infinite;
      transform-origin: 50% 50%;
    }
    .btn::after{
      content: "";
      position: absolute;
      border-radius: 8px;
      background-color: rgb(41, 41, 41);
      inset: 3px;
      z-index: -1;
    }
    @keyframes spin {
      0%{
        transform: rotate(0deg);
      }
      100%{
        transform: rotate(360deg);
      }
    }
  </style>

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

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

相关文章

多线程网络实现在线聊天系统(详细源码)

这篇博客整理自韩顺平老师的多线程网络学习&#xff0c;在Java基础中最难的就是多线程以及网络编程了&#xff0c;如果不太熟悉的小伙伴可以跟着课程学习&#xff0c;韩老师讲得很详细&#xff0c;缺点就是太详细有点墨迹。实现后的效果是在一个类似命令行窗口进行聊天&#xf…

数论基础(II)。

数论基础&#xff08;II&#xff09;TOC 数论按照研究的数据、方法、方向不同&#xff0c;通常可以分为玄数论、素数论、和数论。无限个数&#xff0c;真正用得到的只有数头&#xff1b;数头比较重要的关限是100&#xff0c;120&#xff0c;十万&#xff0c;百亿&#xff0c;&…

【USRP】调制解调系列5:16QAM、32QAM、64QAM、256QAM、1024QAM、基于labview的实现

QAM 正交振幅键控是一种将两种调幅信号&#xff08;2ASK和2PSK&#xff09;汇合到一个信道的方法&#xff0c;因此会双倍扩展有效带宽&#xff0c;正交调幅被用于脉冲调幅。正交调幅信号有两个相同频率的载波&#xff0c;但是相位相差90度&#xff08;四分之一周期&#xff0c…

打造互动体验:品牌 DTC 如何转变其私域战略

越来越多的品牌公司选择采用DTC 模式与消费者进行互动&#xff0c;而非仅仅销售产品。通过与消费者建立紧密联系&#xff0c;DTC模式不仅可以提供更具成本效益的规模扩张方式&#xff0c;还能够控制品牌体验、获取宝贵的第一方数据并提升盈利能力。然而DTC模式的经济模型比许多…

嵌入式通用硬件模块设计——串口音频播放模块

模块功能展示&#xff1a; 串口音频控制模块 一、简介 方案为串口音频播放芯片功放芯片&#xff0c;口音频播放芯片IC为my1690-16s&#xff0c;功放为PAM8406。 1、my1690-16s 迈优科技的一款由串口控制的插卡MP3播放控制芯片&#xff0c;支持串口控制播放指定音频、音量调节…

【Unity小技巧】手戳一个简单易用的游戏UI框架(附源码)

文章目录 前言整套框架分为三大部分框架代码调用源码参考完结 前言 开发一款游戏美术成本是极其高昂的&#xff0c;以我们常见的宣传片CG为例&#xff0c;动辄就要成百上千万的价格&#xff0c;因此这种美术物料一般只会放在核心剧情节点&#xff0c;引爆舆论&#xff0c;做高…

对于Android开发,我们为何要学Jetpack Compose?

概述 Jetpack Compose 是用于构建原生 Android 界面的新工具包。它可简化并加快 Android 上的界面开发&#xff0c;使用更少的代码、强大的工具和直观的 Kotlin API&#xff0c;快速让应用生动而精彩。Compose 使用全新的组件——可组合项 (Composable) 来布局界面&#xff0c…

万户协同办公平台 ezoffice存在未授权访问漏洞 附POC

文章目录 万户协同办公平台 ezoffice存在未授权访问漏洞 附POC1. 万户协同办公平台 ezoffice简介2.漏洞描述3.影响版本4.fofa查询语句5.漏洞复现6.POC&EXP7.整改意见8.往期回顾 万户协同办公平台 ezoffice存在未授权访问漏洞 附POC 免责声明&#xff1a;请勿利用文章内的相…

数据仓库总结

1.为什么要做数仓建模 数据仓库建模的目标是通过建模的方法更好的组织、存储数据&#xff0c;以便在性能、成本、效率和数据质量之间找到最佳平衡点。 当有了适合业务和基础数据存储环境的模型&#xff08;良好的数据模型&#xff09;&#xff0c;那么大数据就能获得以下好处&…

C语言每日一练------Day(6)

本专栏为c语言练习专栏&#xff0c;适合刚刚学完c语言的初学者。本专栏每天会不定时更新&#xff0c;通过每天练习&#xff0c;进一步对c语言的重难点知识进行更深入的学习。 今日练习题关键字&#xff1a;整数转换 异或 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn…

Ubuntu下的QT开发

ubuntu安装QT的组件如下&#xff1a; 若要在ubuntu下启动QT有两种方案&#xff0c;一种是在菜单栏搜索qt双QT Create&#xff1b;另一种则是使用命令&#xff1a;/opt/Qt5.12.9/Tools/QtCreator/bin/qtcreator.sh

小白视角:一文读懂3TS腾讯事务处理验证系统的基础知识

小白视角&#xff1a;一文读懂3TS腾讯事务处理验证系统的基础知识 一、解读结果图1.1 异常测试用例1.2 事务的隔离级别&#xff08;1&#xff09;SQL标准隔离级别&#xff08;2&#xff09;快照隔离&#xff08;Snapshot Isolation&#xff0c;简称 SI&#xff09;&#xff08;…

Linux环境离线安装MySQL8.0.33

目录 一、准备 1、检查libaio.so.1 2、卸载删除原有的mariadb 3、删除my.cnf 4、下载mysql安装包 二、安装 1、上传mysql 2、建立mysql所需目录 3、建立配置文件my.cnf 4、创建mysql用户并授权 5、初始化数据库 6、启动MySQL数据库 7、常见启动报错处理 8、配置M…

VS的调试技巧

Visual Studiohttps://visualstudio.microsoft.com/zh-hans/vs/ 目录 1、什么是调试&#xff1f; 2、debug和release 3、调试 3.1、环境 3.2、 快捷键 3.2.1、F10和F11 3.2.2、ctrlF5 3.2.3、F5与F9 3.2.3.1、条件断点 3.3、监视和内存观察 3.3.1、监视 3.3.2、内存 …

【爬虫GUI】YouTube评论采集软件,突破反爬,可无限爬取!

文章目录 一、背景介绍1.1 软件说明1.2 效果演示 二、科普知识2.1 关于视频id2.2 关于评论时间 三、爬虫代码3.1 界面模块3.2 爬虫模块3.3 日志模块 四、获取源码及软件 一、背景介绍 你好&#xff0c;我是马哥python说 &#xff0c;一名10年程序猿。 最近我用python开发了一…

基于蜜獾算法优化的BP神经网络(预测应用) - 附代码

基于蜜獾算法优化的BP神经网络&#xff08;预测应用&#xff09; - 附代码 文章目录 基于蜜獾算法优化的BP神经网络&#xff08;预测应用&#xff09; - 附代码1.数据介绍2.蜜獾优化BP神经网络2.1 BP神经网络参数设置2.2 蜜獾算法应用 4.测试结果&#xff1a;5.Matlab代码 摘要…

融合正余弦和柯西变异的麻雀搜索算法(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

【数据结构】排序(插入、选择、交换、归并) -- 详解

一、排序的概念及其运用 1、排序的概念 排序&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递减的排列起来的操作。 稳定性&#xff1a;假定在待排序的记录序列中&#xff0c;存在多个具有相同的关键字的记…

APP弱网测试

测试用例 在弱网的条件下 页面的响应正常页面展示的数据无误页面的一致性无误&#xff08;图片展示、排版预期一致、数据展示无误&#xff09;是否会出现ANR、Crash 在网络切换的情况下 页面交互无误无奔溃、显示错乱客户端服务端数据一致性展示无误请求堆积的出路无误 在无网…

谈谈智能安防领域

目录 1.什么是智能安防 2.智能安防的发展过程 3.智能安防涉及到的知识 4.智能安防给人类带来的福利 1.什么是智能安防 智能安防是基于人工智能技术的安全防护系统&#xff0c;旨在通过智能化的方法保护人员和财产的安全。它利用传感器、摄像头、算法等技术&#xff0c;通过识…