Joh*_* w. 5 html css typescript angular
我有一个包含一组信息的对象,包括颜色。我打算将此颜色实现为具有不透明度的背景颜色和文本颜色(没有不透明度以看起来不同)。
有谁知道如何通过对象/变量的颜色来添加不透明度?
.ts
color: string = "green";
name:string = "ABC";
id: number = 1;
Run Code Online (Sandbox Code Playgroud)
.html
<div style="display: flex; flex-direction: column; width: 60%;">
<span [style.background-color]="color" [style.color]="color" class="cc">{{name}}</span>
<span [style.background-color]="color" class="mb" [style.color]="color">{{id}}</span>
</div>
Run Code Online (Sandbox Code Playgroud)
问题
我希望背景颜色具有不透明度,以便文本可见。我打算实现这一点,而不必创建具有“不同”颜色的变量。
您可以在应用不透明度的文本和背景之间添加一个额外的图层:
.box {
padding:10px;
display:inline-block;
color:var(--c);
background:var(--c);
position:relative;
z-index:0;
}
.box::before {
content:"";
position:absolute;
z-index:-1;
top:0;
left:0;
right:0;
bottom:0;
background:rgba(255, 255, 255, 0.5);
}Run Code Online (Sandbox Code Playgroud)
<div class="box" style="--c:red">some text</div>
<div class="box" style="--c:blue">some text</div>
<div class="box" style="--c:green">some text</div>Run Code Online (Sandbox Code Playgroud)
没有伪元素的相同想法:
.box {
padding:10px;
display:inline-block;
color:var(--c);
background:var(--c);
background-image:linear-gradient(rgba(255, 255, 255, 0.5),rgba(255, 255, 255, 0.5))!important;
}Run Code Online (Sandbox Code Playgroud)
<div class="box" style="--c:red">some text</div>
<div class="box" style="color:blue;background:blue;">some text</div>
<div class="box" style="color:green;background-color:green;">some text</div>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
74 次 |
| 最近记录: |