Стилус – добавление процентов

У меня проблемы с Stylus. Я просто пытаюсь создать функцию, которая возвращает ширину столбца с учетом диапазона n. Вот мой код:

column-gap = 1%
column-width = 15%

column-span(n)
(column-width * n) + (column-gap * (n - 1))

Проблема в том, что когда n = 2, я ожидаю, что column-span вернет 31%, но вместо этого возвращает 30.3%.

После проб и ошибок я заметил, что даже этот код соответствует 30.3%:

30% + 1%

Я не уверен, что здесь происходит.


person Spencer    schedule 20.12.2012    source источник
comment
Это не то, что я ожидал (Sass возвращает 31%), но 1% от 30 — это .3.   -  person cimmanon    schedule 20.12.2012


Ответы (1)


Да, это ошибка в Stylus — он обрабатывает такой ввод, как будто вы добавляете процент от левой части, поэтому он добавляет 1% от 30% к 30%.

Здесь вы можете использовать обходной путь:

column-span(n)
  (column-width * n) + unit(column-gap * (n - 1),"")

здесь вы удаляете единицу измерения из второй части выражения, чтобы она обрабатывалась как 30% + 1, и в таких случаях Stylus выдавал вам правильный 31%.

person kizu    schedule 21.12.2012