写点什么

CSS 使用渐变实现 Chrome 标签栏效果

作者:源字节1号
  • 2024-08-01
    浙江
  • 本文字数:1208 字

    阅读完需:约 4 分钟

CSS使用渐变实现Chrome标签栏效果

这次来看一个带特殊圆角导航栏布局,如下谷歌浏览器的标签栏:



这样一个布局如何实现呢?

CSS 渐变几乎是无所不能的,什么的图形都能绘制,这里可以拆分一下,两个矩形,两个圆形,还有两个反向圆角,也就是 2 个 线性渐变,4 个径向渐变,示意如下:



最终实时效果如下(上面是原理图)



完整代码如下:

<!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>CSS使用渐变实现Chrome标签栏效果</title>    <style>      body {        margin: 0;        padding: 0;      }      .tab {        display: flex;        background-color: #dee1e6;        padding: 0 15px;        font-size: 14px;      }      .tab-item {        position: relative;        padding: 10px 35px;        cursor: pointer;        margin: 0 -20px;        color: transparent;        background-image: radial-gradient(            circle at 27px 10px,            var(--color, rgba(33, 150, 243, 0.59)) 12px,            transparent 0          ),          linear-gradient(var(--color, #4caf50), var(--color, #4caf50)),          linear-gradient(var(--color, #f44336), var(--color, #f44336)),          radial-gradient(            circle at 15px 0,            transparent 15px,            var(--color, #9c27b0) 0          );        background-size: calc(100% - 54px), calc(100% - 30px) calc(100% - 12px),          calc(100% - 54px) 100%, 100% 12px;        background-position: left top, center bottom, center bottom,          -15px bottom;        background-repeat: repeat-x, no-repeat, no-repeat, repeat-x;      }      .tab.fix .tab-item {        --color: transparent;        color: #000;      }      .tab.fix .tab-item:hover {        --color: #fff;      }      .tab.fix .tab-item.active {        --color: #fff;        z-index: 1;      }    </style>  </head>  <body>    <nav class="tab fix">      <a class="tab-item">用户管理</a>      <a class="tab-item">角色管理</a>      <a class="tab-item active">部门管理</a>      <a class="tab-item">岗位管理</a>    </nav>  </body></html>如若转载,请注明出处:开源字节   https://sourcebyte.vip/article/383.html

复制代码


用户头像

源字节1号

关注

一个着迷于技术又喜欢不断折腾的技术活跃者 2022-03-09 加入

一个着迷于技术又喜欢不断折腾的技术活跃者。喜欢并热爱编程,执着于努力之后所带来的美好生活!

评论

发布
暂无评论
CSS使用渐变实现Chrome标签栏效果_开源_源字节1号_InfoQ写作社区