【发布时间】:2017-02-20 22:53:37
【问题描述】:
我有一个定义为 CSS 变量的调色板。
:root {
--background-normal: #fffff;
--text-normal: #212a32;
--background-warning: #ff0000;
--text-warning: #ffffff;
}
元素的 CSS 类正在使用这些变量。
#article-body {
background-color: var(--background-normal);
color: var(--text-normal);
}
不同的类使用不同的变量。我需要做的是分析渲染页面上的某个元素,并告诉它在其样式中使用了哪些 CSS 变量。例如:div#article-body 使用变量background-normal 和text-normal。
我可以使用getComputedStyle 获得元素的计算样式,但返回的样式将所有 CSS 变量替换为实际值。
关于如何提取带有变量名的 CSS 有什么想法吗?
【问题讨论】:
-
你为什么要这样做?
-
这是应用程序主题的子任务。我希望用户能够更改页面上不同元素的颜色。应用程序中有很多带有颜色的 CSS 变量,我想减少这个数字,只显示在这个特定元素中实际使用的变量。