Я тестирую структуру CSS для указания чисел через микроклассы. Например, что-то вроде <div class="fifty percent wide">
может перевести на width: 50%
. Реализация использует переменные CSS (пользовательские свойства).Получение результата CSS calc для установки пользовательских свойств
Рассмотрим следующий 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»?
Связанный: http://stackoverflow.com/questions/28715872/what-is-result-of-calc-in-css, хотя это не имеет никакого отношения к тому, как вычисляются пользовательские свойства, он предлагает немного понимания относительно того, как underspecced calc() находится в этой области. – BoltClock