我正在测试一个通过微类指定数字的 CSS 框架。例如,类似的东西<div class="fifty percent wide">
可能会翻译成width: 50%
. 该实现使用 CSS 变量(自定义属性)。
考虑以下 CSS:
.fifty { --number: 50; }
.percent { --percent: calc(1% * var(--number)); }
.wide { width: var(--percent); }
这一切都很好,效果很好。问题是我想编写一个测试套件,该套件将验证fifty percent
结果是否--percent
为50%
. 不幸的是,如果我getComputedStyle
用来检查 的值--percent
,我会看到整个(未解析的、未计算的)“calc”字符串。如果我检查 的值width
,我会得到已经解析的值,例如“512px”。
有没有办法以编程方式获取和验证自定义 CSS 属性的已解析计算值?还是一个 API 来强制评估“calc”表达式?