css实现按钮圆角渐变样式

news2024/11/15 23:27:22

最终成果图:

在这里插入图片描述
背景:

最近项目数据大屏这个样式给我卡住了,起因是UI设计想要按钮边框渐圆角背景透明渐变,我查找了好多资料也在问答里提问,都没有实现初始样式。原因是如果想用渐变边框就会使用到属性border-image,这个属性有个bug就是不能和border-radius圆角一起使用。用过伪类和盒子的方法试了,如果想通过伪类或盒子去做,那么背景就不能是透明的。因此和UI设计商量了一手,改成了背景不透明的样式,我用的盒子。建议如果有我这种情况的,要么不要渐变边框不要圆角,要么渐变圆角边框不要透明背景。

代码:

<div class="btn-container">
  <!--按钮组-->
  <div class="btn-group">
    <div class="btn-left" :class="activeCountNum===1?'active':''" @click="handleCount(1)">
      <div class="btn">按城市</div>
    </div>
    <div class="btn-center" :class="activeCountNum===2?'active':''" @click="handleCount(2)">
      <div class="btn">按空间</div>
    </div>
    <div class="btn-right" :class="activeCountNum===3?'active':''" @click="handleCount(3)">
      <div class="btn">按产品</div>
    </div>
  </div>
  <!--导出-->
  <div class="btn-export" @click="exportFile">
    <div class="export">导出</div>
  </div>
</div>
handleCount(value){
  this.activeCountNum=Number(value)
},
.btn-container{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  position: relative;
  margin:10px 20px 0 20px;
  .btn-group{
    display: flex;
    flex-direction: row;
    height: 32px;
    .btn-left,.btn-center,.btn-right{
      box-sizing: border-box;
      padding: 1px;
      background-image:linear-gradient(180deg, #4DAAFA 0%, #074B98 100%);
      .btn{
        margin-right: 1px;
        color: #ffffff;
        font-size: 14px;
        line-height: 30px;
        text-align: center;
        background: linear-gradient(180deg, #11498B 0%, #082F67 100%);
        padding:0 10px;
      }
      &:hover,&:active{
        .btn{
          background:linear-gradient(0deg, #064895 0%, #1C7DCF 100%)
        }
      }
    }
    .btn-left{
       border-radius: 4px 0 0 4px;
       padding-right: 0px;
       .btn{
          border-radius: 4px 0 0 4px;
          padding: 0 14px;
       }
     }
     .btn-right{
       border-radius: 0 4px 4px 0;
       padding-left: 0px;
       .btn{
         border-radius: 0 4px 4px 0;
       }
     }
     .active{
        .btn{
          background:linear-gradient(0deg, #064895 0%, #1C7DCF 100%)
        }
      }
    }
    .btn-export{
      width: 70px;
      height: 32px;
      box-sizing: border-box;
      padding: 1px;
      border-radius: 4px;
      background-image:linear-gradient(180deg, #4DAAFA 0%, #074B98 100%);
      .export{
        width: 100%;
        height: 100%;
        color: #ffffff;
        font-size: 14px;
        line-height: 30px;
        text-align: center;
        border-radius: 4px;
        background: linear-gradient(180deg, #11498B 0%, #082F67 100%);
      }
      &:hover,&:active{
        .export{
          background:linear-gradient(0deg, #064895 0%, #1C7DCF 100%)
        }
      }
    }
  }

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

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

相关文章

在Microsoft Excel中带单位的数字如何求和

使用 Excel 中的 SUM 函数对一系列单元格、整列或非连续单元格求和。要创建出色的 SUM 公式&#xff0c;请将 SUM 函数与其他 Excel 函数结合使用&#xff0c;然而 SUM 函数不能直接对带单位的数字进行求和。 当直接相加带单位的几个数字会出现如下错误&#xff1a; 错误的原因…

811. 交换数值

链接&#xff1a; https://www.acwing.com/problem/content/813/ 题目&#xff1a; 输入两个整数 xx 和 yy&#xff0c;请你编写一个函数, 交换两个整数的数值并输出交换后的 xx 和 yy。 C中的格式为&#xff1a;void swap(int &x, int &y)。 Java中的格式为&#xff1…

【软件测试】Git 将项目本地推送至GitHub与Gitee(详细)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 Gitee拉取Github仓…

KeyShot 2023 Pro 对 Mac 和 Windows 系统的要求

KeyShot 2023 Pro 是一款功能强大的计算机辅助设计&#xff08;CAD&#xff09;渲染软件&#xff0c;它为用户提供了高质量的视觉效果和逼真渲染。 KeyShot 2023 Pro for Mac可以与各种主流 CAD 软件进行集成&#xff0c;包括 SolidWorks、AutoCAD、Rhinoceros、Fusion 360 等…

simulink matlab function

目录 改形参类型​编辑 多输出值 排序 peisistent 关键字&#xff0c;静态相当于static function添加trigger 输出调用function call() 改形参类型 多输出值 function [y1,y2] myfcn(u1,u2)y1 u1u2; y2 u1-u2; 排序 peisistent 关键字&#xff0c;静态相当于static func…

MIT 6.S081 -- Virtual memory for applications

MIT 6.S081 -- Virtual memory for applications 引言应用程序使用虚拟内存所需要的特性支持应用程序使用虚拟内存的系统调用虚拟内存系统如何支持用户应用程序构建大的缓存表Bakers Real-Time Copying Garbage Collector使用虚拟内存特性的GC使用虚拟内存特性的GC代码展示 引言…

【Linux后端服务器开发】基础IO与文件系统

目录 一、基础IO 1. C语言文件读写 2. 标志位传参 3. C语言与系统调用关系 二、文件系统 1. 文件描述符 2. 输入输出重定向 一、基础IO 文件调用 库函数接口&#xff1a; fopen、fclose、fwrite、fread、fseek系统调用接口&#xff1a;open、close、write、read、lsee…

利用 kube-vip 实现 K3s 高可用部署

作者简介 王海龙&#xff0c;Rancher 中国社区技术经理&#xff0c;Linux Foundation APAC Evangelist&#xff0c;负责 Rancher 中国技术社区的维护和运营。拥有 9 年的云计算领域经验&#xff0c;经历了 OpenStack 到 Kubernetes 的技术变革&#xff0c;无论底层操作系统 Lin…

腾讯音乐娱乐集团2023校园招聘技术类岗位编程题合集

字符串操作 题解&#xff1a;先变为没出现过的字符&#xff0c;然后在正常的变换 class Solution { public:/*** 代码中的类名、方法名、参数名已经指定&#xff0c;请勿修改&#xff0c;直接返回方法规定的值即可** 返回满足题意的最小操作数* param str string字符串 给定…

Python绘制直方图

文章目录 初步参数绘图类型多组数据直方图对比 初步 对于大量样本来说&#xff0c;如果想快速获知其分布特征&#xff0c;最方便的可视化方案就是直方图&#xff0c;即统计落入不同区间中的样本个数。 以正态分布为例 import numpy as np import matplotlib.pyplot as pltxs…

用c++实现大小端序互转(字符串方法)

今天在逆一个RC4加密算法&#xff0c;忘了IDA如何自动将大小端序互转的按键&#xff0c;索性自己写了一个&#xff0c;因为是用字符串方法&#xff0c;所以理论上长度是管够的 #include <iostream> #include <string> using namespace std; int main() {string m_…

macOS 14 Sonoma Beta 测试版体验,不影响主力系统

今年的 WWDC 上 Apple 依旧保持往年的发布节奏&#xff0c;公布了今年的 macOS 新版本&#xff1a;macOS Sonoma&#xff0c;不过和以往有些不太一样的是&#xff0c;这一次 Apple 将测试版系统直接下发给了普通开发者账户&#xff0c;对于一般用户简单注册就可以直接获得 macO…

Windows VScode如何配置与使用git?

当我们在VScode中编写代码后&#xff0c;需要提交到git仓库时&#xff0c;但是我们又不想切换到git的命令行窗口&#xff0c;我们可以在VScode中配置git&#xff0c;然后就可以很方便快捷的把代码提交到仓库中。 1. 官网下载安装Git命令行工具 根据自己的电脑系统&#xff0c…

分布式ELK日志文件分析系统(曾经沧海难为水,除却巫山不是云)

文章目录 一、ELK 概述1. 为什么要使用 ELK2. 完整日志系统基本特征3. ELK 简介3.1 ElasticSearch&#xff08;ES&#xff09;3.2 Kiabana3.3 Logstash3.4 其它组件Filebeat缓存/消息队列Fluentd 4. ELK 的工作原理5. Linux 系统内核日志消息的优先级别 二、 部署 ELK 集群服务…

基于matlab检测交通视频中的汽车(附源码)

一、前言 此示例说明如何使用工具箱可视化和分析视频或图像序列。此示例来检测交通视频中的浅色汽车。请注意&#xff0c;VideoReader 的有些功能特定于平台&#xff0c;可能无法在某些平台上读取提供的 Motion JPEG2000 视频。 二、步骤 步骤 1&#xff1a;使用 VideoReade…

用IDEA写第一个Spring程序 HelloWorld

用IDEA写第一个Spring程序 HelloWorld 环境 Orcal JDK&#xff1a;1.8.0_341 maven&#xff1a;3.9.3 Spring&#xff1a;5.3.10 IDEA&#xff1a;2023.1.2 1. 安装JDK和IDEA 2. 安装maven并配置环境变量、换源 3. IDEA中maven属性配置&#xff0c;主要是版本和settings文件及…

React 新版官方文档 (一) useReducer 用法详解

useReducer useReducer 是一个可以让你向组件中添加 reducer 的 Hook const [state, dispatch] useReducer(reducer, initialArg, init?)基本用法 const reducer (state, action) > { ... } const MyComponent () > {const [state, dispatch] useReducer(reducer…

820. 递归求斐波那契数列

链接&#xff1a; 原题 题目&#xff1a; 请使用递归的方式求斐波那契数列的第 nn 项&#xff0c;下标从1开始。 斐波那契数列&#xff1a;1,1,2,3,5…1,1,2,3,5…&#xff0c;这个数列从第 33 项开始&#xff0c;每一项都等于前两项之和 输入格式 共一行&#xff0c;包含整数 …

npm 包和模块简介

目录 1、关于公共npm注册表 2、关于包和模块 2.1、关于包 2.2、关于包格式 2.3、npm包git URL格式 2.4、关于模块 3、关于范围 3.1、作用域和包的可见性 4、关于公共软件包 5、关于私有包 6、npm包范围、访问级别和可见性 1、关于公共npm注册表 公共npm注册表是Jav…

学习单片机的三个步骤:基础知识、编程语言和实践项目

当然&#xff01;学习单片机的过程可以分为以下三个步骤&#xff1a; 学习基础知识&#xff1a;在开始学习单片机之前&#xff0c;首先需要掌握一些基础知识。了解数字电子学和模拟电子学的基本原理是很重要的&#xff0c;包括数字和模拟信号、逻辑门、计数器、寄存器等。还需…