如何使用 CSS-in-JS 改变 CSS 自定义属性颜色?

假设我有以下带有情绪的 css`` prop 的代码:


<div css={css`

  background: var(--bg);

`}>

但我想使这个 div 的背景变暗。


使用 sass 使用 darken() 函数会很简单,但我认为在情感中使用 sass 是不可能的?


另一种选择是使用 javascript 变暗函数,例如来自 Polish.js 的函数:


import { darken } from "polished";


<div css={css`

  background: ${darken(0.2, var(--bg))};

`}>

但是,这也是不可能的,因为var(--bg)在 javascript${ }范围内无法访问CSS 自定义属性。


有没有简单直接的解决方案来解决这个问题?


12345678_0001
浏览 197回答 2
2回答

慕婉清6462132

它可以帮助;)document.querySelector('button').addEventListener('click', () => {&nbsp; document.body.style.setProperty('--color', 'blue')}):root {&nbsp; --color: red;}body {&nbsp; background: var(--color)}<button>TEST</button>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript