【发布时间】:2017-05-15 18:00:54
【问题描述】:
我已经能够使用 document.documentElement.style.setProperty("--text-color", "#333") 编辑 CSS 变量,但是,我无法使用 jQuery 重现这一点,.css() 原型似乎只适用于已知的 CSS 属性。
这是上述 CSS 变量的示例 CSS。
:root {
--text-color: #888;
}
div {
color: var(--text-color);
}
【问题讨论】:
-
$("element").css("color", "#888")
-
@Bindrid CSS 变量,而不是通用 CSS。 developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_variables
-
哦,你有没有试过把它们作为一个属性来纠正?
-
@Bindrid 我能够让它与
$("html").attr("style", "--text-color", "#333")一起工作,但由于我使用 JS 变量来填写属性名称和值,我要么必须 - 因为我是使用多个 CSS 变量 - 获取当前样式 attr 值并附加新的 var 和值,对我想更改的每个变量进行硬编码,否则我必须通过循环遍历所需的值和输入来做一些魔术。所以它确实有效,但与香草 JSdocument.documentElement.style.setProperty("--text-color", "#333")相比非常笨重。
标签: javascript jquery html css css-variables