在 SCSS 的 HSLA 中使用 CSS 变量

Using CSS Variables in HSLA in SCSS

所以我一直在尝试在 HSLA 中使用 CSS 变量。我需要保持相同的颜色,但只需更改不透明度。

<div>
// content here
</div>

SCSS

:root {
  --color: 332, 61%, 78%;
}

div {
  background: hsla(var(--color), 0.5);
}

https://codepen.io/sammiepls/pen/zLpvXY

所以我想我可以只保留 hsl 颜色并通过使用变量更改悬停时的不透明度或诸如此类的东西。如果我只是使用普通的 CSS,它就可以工作。但是我正在使用 SCSS 并且它导致它失败,因为 SASS 有它自己的 HSL 函数,它需要三个值;我得到的错误基本上是没有足够的参数。有没有人有办法解决它?我尝试在整个函数周围使用字符串插值 #{} 但它没有用。

嘿,我认为你想在 SCSS 中做的是将整个函数视为一个字符串。 这应该工作 background: #{hsla(var(--color), 0.5)} 将在 CSS 上输出为 background: hsla(var(--color), 0.5);