CSS 里颜色变量使用透明值的问题

2020-03-23 20:19:00 +08:00
 MajestySolor
:root {
  --color-main: rgb(236, 65, 65);
}

.text {
  color: var(--color-main);
}

这是最基本的变量使用,但是这里有个问题,那就是如果我想使用不同的透明度就必须定义同一个颜色不同透明度的变量,非常不方便,然后在 stackoverflow 上看到了另一种更灵活的写法

:root {
  --color-main: 236, 65, 65;
}

.text {
  color: rgba(var(--color-main), 0.8);
}

看上去很完美,然而在我实际使用中发现 --color-main: 236, 65, 65 这样的写法在编辑器里是无法显示颜色拾取器的,比如我用的 VSCode 就不行

想问问各位大佬有么有更方便更灵活的办法

1563 次点击
所在节点    程序员
2 条回复
VDimos
2020-03-23 20:24:37 +08:00
这个特性还没用过,感觉用了 less 回不去了
noe132
2020-03-23 23:27:30 +08:00
明显 css variable 是 runtime 才能确定的值。而且遵循层叠规则,更高优先级的覆盖低优先级。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/655487

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX