今天遇到一个问题:div边框和背景色随主题色变化,边框和字体不透明,背景半透明(如下图所示)
设计图
在网上搜索解决办法发现都是说使用rgba,但是另外一个问题就来了,背景和边框的颜色就没办法改变了,所以只好自己想办法。突发奇想使用伪类完美解决了问题,话不多说,上代码(此处样式部分使用了scss,不懂的请自行百度)
<!-- html代码 -->
<div class="box">
内容
</div>
$primary:#2CD334;
.box {
position: relative;
border: 1px solid $primary;
width:100px;
height: 100px;
border-radius: 12px;
&:after {
content: "";
position: absolute;
width: 100%;
height: 100%;
background: $primary;
opacity: 0.1;
top: 0;
left: 0;
}
}
实际效果
背景和框架完成了,内容就自己解决啦~