【发布时间】:2021-06-18 14:40:49
【问题描述】:
使用 pure CSS 如何使 RGB 变亮,例如:rgb(255, 0, 0)
SASS 的 lighten mixin 运行良好:lighten(rgb(255, 0, 0), 25%) 但是它不支持这样的 CSS 变量:lighten(var(--redColor), 25%)
我需要使用 CSS 变量,因为您可以在页面加载后即时更改 CSS 变量。
我尝试过的事情
-
opacity: 0.75- 不透明度使背景渗入我不想要的颜色。 -
filter: brightness(- 过滤器会影响整个元素,但我只想减轻特定的颜色。 -
hsl(0, 100%, 50%)- HSL 看起来很有希望,但我需要一种将 RGB 转换为 HSL 以减轻 RGB 的方法。
理想情况下,我希望有一个 SASS mixin,它可以做一些 CSS 来减轻传递给它的任何颜色。
【问题讨论】:
-
我认为 CSS3 尚不支持颜色操作,但它会在 CSS 颜色模块级别 4 中出现:w3.org/TR/css-color-4
-
您希望将其应用于背景吗?如果是这样的话,还有很多办法
-
@TemaniAfif 我需要它来处理文本颜色,所以像
filter和background-image这样的东西不起作用。 -
这里有一篇关于为什么使用 HSL 而不是 RGB 的有用文章 [链接]elad.medium.com/why-css-hsl-colors-are-better-83b1e0b6eead 最棒的是,您可以使用 CSS 变量作为每个组件,并且亮度很有意义不在 RGB 中。
标签: html css sass brightness