css小技巧 linear-gradient

设计图:

现在的要求是不准用图片,好吧,那就用代码简单实现下。

方式1:svg
复制代码
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
  <rect x="-30" y="1" rx="8" ry="8" width="64" height="34" 
style="fill:#ffffff;stroke:black;stroke-width:1;" />
</svg>

效果:

太丑,不行

方式2:背景渐变,中间套一层白色背景,保留边框1px
复制代码
 <div class="box">
    <div class="btn-box">报表查询</div>
 </div>


  .box {
    display: inline-block;
    padding: 1px;
    background: linear-gradient(90deg,#fff,#ccc);
    border-radius: 8px;
    .btn-box{
      padding: 10px 20px;
      display: inline-block;
      background: #ffffff;
      border-radius: 8px;
     }
   }

效果:

效果一般,勉强能用。

但是,UI改设计了,白色底不好看,改透明了,这种背景色渐变的就不能用了。

方式3:border边框渐变
复制代码
<div class="box">
  <div class="btn-box">报表查询</div>
</div>

  .box {
    text-align: center;
    border-radius: 8px;
    border-right: 1px solid #495B6A;
    box-sizing: border-box;

    .btn-box{
      width: 94px;
      height: 34px;
      display: flex;
      justify-content: center;
      align-items: center;
      border-top: 1px solid;
      border-bottom: 1px solid;
      border-image: linear-gradient(90deg, transparent 60%, #495B6A 90%, transparent 97%) 1;
    }
  }

效果:

就这个了!

相关推荐
M ? A20 小时前
Vue转React最佳工具对比:Vuera、Veaury与VuReact
前端·javascript·vue.js·经验分享·react.js
We་ct20 小时前
JS手撕:函数进阶 & 设计模式解析
开发语言·前端·javascript·设计模式·面试·前端框架
悟空瞎说20 小时前
前端老鸟实战:纯 CSS 实现小红书「真・瀑布流」,零 JS、自动错落、生产可用
前端
yuki_uix20 小时前
当 reduce 遇到二维数据:从"聚合直觉"到"复合 Map"的思维跃迁
前端·javascript·面试
我叫黑大帅20 小时前
Vue3中的computed 与 watch 的区别
前端·javascript·面试
暗不需求20 小时前
# 一文搞懂 JavaScript 内存机制:从栈和堆,到闭包为什么“活得更久”
前端·javascript
CharlesY20 小时前
JavaScript HTML5 Cache Manifest:离线应用缓存机制考古
前端·javascript
yuki_uix20 小时前
前端解题的 6 个思维模型:比记答案更有用的东西
前端·面试
Bigger20 小时前
第三章:我是如何剖析 Claude Code 工具系统与命令执行机制的
前端·claude·源码阅读
GISer_Jing20 小时前
告别手搓架构图!Excalidraw+AI Skills 高效绘制手绘风技术图
前端·人工智能·react.js