我试过这个:
:root {
--primary-color: $black
}
$secondary-color = "lighten(%s, 20%)" % var(--primary-color)
Run Code Online (Sandbox Code Playgroud)
(我从这里拿来的:如何在 calc 中使用 Stylus 变量?)
我没有收到任何错误。但是,$secondary-color不渲染任何颜色。
这样做的最佳方法是什么?
结果是这样的:
background-color: lighten(var(--primary-color), 20%) 所以我认为有些东西渲染得不好。
小智 1
这是行不通的,因为 1.lighten是一个在编译时执行的预处理器函数,而插值只是传递所有内容,并且 2.lighten根本不应该使用 css 变量,因为它从 中提取数值一种颜色,以便在编译时计算另一种颜色,在当时不知道 css 变量的情况下,此外 3. 在 css 中,使用包含完整颜色定义的 css 变量甚至是不可能的,所以预处理器无法做到这一点:为了使颜色混合在运行时工作,您需要像var(--primary-h),var(--primary-s)和 一样将其分解var-primary-l,并使用calc来分别对值进行操作。
| 归档时间: |
|
| 查看次数: |
1474 次 |
| 最近记录: |