css 如何得到一个半透明的边框图像来显示它后面的边框颜色?

wn9m85ua  于 2023-02-01  发布在  其他
关注(0)|答案(2)|浏览(166)

我有一个带有20 px右边框的 Package 器div,我设置了一个border-color,然后设置了一个带有半透明png的border-image。
我这样做是为了能够通过JavaScript改变下面的颜色,同时保持png的纹理。但是,一旦我使用了border-image规则,“背景”边框颜色就会变成白色,或者完全消失。
HTML代码简单明了:

<div class="wrapper clearfix">
...
</div>

以及CSS:

.wrapper {
    float: left; 
    min-height: 100%; 
    border-right: 20px solid lime url('../img/elastic.png'); 
    position: relative;
}
v8wbuo2f

v8wbuo2f1#

抱歉,border-image不能与border-color一起使用。
根据W3C:
“border-image”属性指定要使用而不是“border-style”属性给定的边框样式的图像。
正如你在JSFiddle中看到的,所有的边框样式都被忽略了,只有边框宽度有一些影响。
我建议你为你想要的每个边框创建特定的图像。

vatpfxk5

vatpfxk52#

对于您的情况,我能想到的唯一解决方案是使用border-image的SVG,它编码在数据中:这样,您就可以通过JS操作它并应用结果。
或者,使用canvas元素动态生成位图图像,并将其用作border-image。

相关问题