【CSS】透明背景的圆角渐变边框实现方案

css的渐变边框可以用下面方式实现

border-image: linear-gradient(rgb(89, 0, 255),pink) 30 30;

css的圆角边框可以用下面方式实现

border-radius: 20px;

那想要实现一个圆角的渐变边框呢,可能会以为,两个都用上不就可以了,但事实是,这两个属性并不兼容,所以要实现一个圆角的渐变边框,就得需要曲线救国的方法了

<!DOCTYPE html>
<html>
  <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,user-scalable=no" />
    <!-- <link rel="icon" href="<%= BASE_URL %>favicon.ico" /> -->
    <title>渐变边框</title>
  </head>
  <style>
    
    body{
      background: linear-gradient(60deg, #dfdee1, #edabb5);
    }
    .demo{
      width: 200px;
      height: 60px;
      position: relative;
      border-radius: var(--border-radius);
     --border-width: 3px;
     --border-radius: 10px;
     --border-color:  linear-gradient(270deg, rgba(148, 135, 253, 1), rgba(143, 246, 226, 1));
     background: transparent;
    }
    .demo::after {
     content: "";
     position: absolute;
     left: 0;
     top: 0;
     width: 100%;
     height: 100%;
     padding: var(--border-width);
     border-radius: var(--border-radius);
     background: var(--border-color);
     --mask-bg: linear-gradient(red, red);
     --mask-clip: content-box, padding-box;
     -webkit-mask-image: var(--mask-bg), var(--mask-bg);
     -webkit-mask-clip: var(--mask-clip);
     -webkit-mask-composite: destination-out; 
    }
    </style>
    
    <body>
     <div class="demo"></div>
    </body>
</html>

最终效果图

 

 

文章来源地址https://uudwc.com/A/NZ2zb

原文地址:https://blog.csdn.net/WXY19951125/article/details/132214581

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年08月11日 10:44
React实现点击切换组件
下一篇 2023年08月11日 10:44