Как я могу меньше инструктировать, чтобы игнорировать математику для определенных стилей?

Я использую новую функцию calc в CSS для получения ширины для объекта, например:

width: calc(100% - 40px);

К сожалению, поскольку это находится в файле LESS, LESS "помогает" предварительно преобразовать это значение в 60% во время компиляции.

Я хочу меньше игнорировать математику, когда она находится в функции calc, так как мне нужен браузер для этого вычисления, а не меньше.

В любом случае я могу сделать LESS игнорировать этот расчет, чтобы я мог передать его прямо в браузер?

Ответ 1

Используйте его через экранированную строку:

width: ~"calc(100% - 40px)";

Коды выводятся исключительно как CSS:

width: calc(100% - 40px);

Вместо предварительного расчета width: calc(60%) (как вы переживаете).

ПРИМЕЧАНИЕ. МЕНЬШЕ 1.4+ не нуждается в этой экранированной строке, если установлен режим строго-математический, так как всякая "математика" требует, чтобы ее собственные скобки запускались. Таким образом, LESS 1.4+ в этом режиме может использоваться так, как вы изначально его использовали, и если вы хотите, чтобы он выполнял математику, для этого нужны дополнительные скобки и функция unit(): width: calc((100% - unit(40px)));.