当前位置: 首页 > Web前端 > CSS

用CSS实现渐变边框的5种方法

时间:2023-03-30 14:11:18 CSS

为边框设置渐变色是一种很常见的效果。有很多方法可以达到这种效果。今天,我就把我知道的方法列在这里,供大家参考。1.使用border-imageCSS提供了border-image属性来为边框绘制复杂的图案。类似于background-image,我们可以在border中显示image和linear-gradient。通过border-image设置渐变色边框是最简单的方法,只需要两行代码:CSS:div{border:4pxsolid;border-image:linear-gradient(toright,#8f41e9,#578aef)1;}/*或*/div{border:4pxsolid;border-image-source:线性渐变(向右,#8f41e9,#578aef);border-image-slice:1;}Codependemo这个方法很简单但是有一个明显的缺陷,不支持设置border-radius。接下来介绍几种支持border-radius的方法。2.使用background-image使用background-image绘制渐变背景,用纯色覆盖中间应该是最容易想到的方法。思路是:用两个盒子叠加,并为下方的盒子padding设置渐变背景和渐变背景,为上方的盒子设置纯色背景。HTML:Loremipsumdolor,sitametconsecteturadipisicingelit.Isterationenecessitatibusnumquamsuntnihilquossaepesitfacere。动画temporibusadipisci!Corporis,accusamustempora。

CSS:.border-box{width:300px;高度:200px;边距:25px0;}.border-bg{填充:4px;背景:线性渐变(向右,#8f41e9,#578aef);border-radius:16px;}.content{height:100%;背景:#222;边界半径:13px;/*trcikypart*/}Codependemothis这种方法的优点是简单易懂,兼容性好。缺点是设置内容的border-radius会很棘手且不准确。3、二层元素、background-image、background-clip为了解决方法2中border-radius不准确的问题,可以在底层使用单个元素作为渐变色背景,并设置透明边框并在上层Background上设置纯色(需要设置background-clip:padding-box,避免遮住下层元素的边框),上下层设置相同的border-radius。HTML:
非常感谢。通过这种方式,需求永远不会是他们经常不得不做的事情。我们指责别人是为了取悦指责者,用时代的精神去谋取利益!身体,我们控诉时代。
CSS:.border-box{border:4pxsolidtransparent;边界半径:16px;位置:相对;背景色:#222;背景剪辑:填充框;/*重要*/}.border-bg{position:absolute;顶部:0;右:0;左:0;底部:0;z-指数:-1;边距:-4px;边界半径:固有的;/*important*/background:linear-gradient(toright,#8f41e9,#578aef);}Codependemo4.白元素、方法3的电影我们可以将电影电影以电影HTML结构。HTML:Loremipsumdolor,sitametconsecteturadipisicingelit.Isterationenecessitatibusnumquamsuntnihilquossaepesitfacere。!Corporis,accusamustempora。CSS:.border-box{border:4pxsolidtransparent;边界半径:16px;位置:相对;背景色:#222;盒子;/*重要*/}.border-box::before{content:'';位置:绝对;顶部:0;右:0;左:0;底部:0;z-指数:-1;-4像素;边界半径:继承;/*重要*/背景:线性渐变(向右,#8F41E9,#578AEF);}Codependemo5。单层元素,background-clip,background-origin,background-image最后我觉得是最优雅的方法。只需要使用一个单层元素,分别设置background-clip、background-origin、background-image三个属性,每个属性设置两组值即可。第一组用于设置边框内的单色背景,第二组用于设置边框上的渐变色。HTML:亲爱的顾客,追求adipisicion很重要。通过这种方式,需求永远不会是他们经常不得不做的事情。!身体,我们控诉时代。CSS:.border-box{border:4pxsolidtransparent;边界半径:16px;背景剪辑:填充框,边框框;-框,边框框;background-image:linear-gradient(toright,#222,#222),linear-gradient(90deg,#8F41E9,#578AEF);}Codependemo目前能??想到这5种方法,个人推荐使用4和5先。如果还有其他更好的方法,欢迎补充。