有个div,它的背景色通过var(--xxx)指定(其中-xxx为rgb或hsl格式的颜色),如何在此基础上再设置背景透明度?(只改变背景的透明度,但是里面的内容是不需要透明的。)
单纯用CSS去计算并不行。要么一开始就用CSS预处理器来定义变量,这样就可以使用内部函数直接计算了。
要么考虑用伪类去做背景色?这样就可以直接使用 opacity
属性。
目前还不行。
纯CSS的话只能通过这种方式进行拆分组合
:root{
--r: 0;
--g: 0;
--b: 0;
--color1: rgba(var(--r),var(--g),var(--b),1)
--color2: rgba(var(--r),var(--g),var(--b),.5)
}
8 回答4.6k 阅读✓ 已解决
6 回答3.3k 阅读✓ 已解决
6 回答2.2k 阅读
5 回答6.3k 阅读✓ 已解决
5 回答1.2k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
需要根据情况具体分析,列一下方案:
rgba(255, 0, 0, 0.6)
。#0996
或#00999966
。这才发现,没有
background-opacity
属性,而使用opacity
和filter: opacity()
会影响到元素整体。