Как присвоить значение переменной LESS с помощью селектора - PullRequest
0 голосов
/ 30 марта 2012

Так как LESS - это язык таблиц стилей перед компиляцией, это может не достичь того, что мне нужно, но идея такова:

#sidebar {
     width: 40%;
 }

@sidebar_width : @('#sidebar:width');

.some_other_elements {
      width: @sidebar_width;
 }

Итак, у меня есть три вопроса:

  1. Возможно ли что-то подобное вышеописанному? Я только что обнаружил МЕНЬШЕ, и документация делает меня больным.

  2. Если вышеизложенное возможно, будет ли генерироваться CSS с .some_other_elements, установленным на 40%, или фактической шириной боковой панели? Можно ли получить реальную ширину, используя LESS?

  3. Если вы можете дать мне свое мнение о библиотеке в целом вместе с ответом или комментарием, я бы хотел услышать его. Кажется, это немного, но, возможно, это следующий jquery, и мне нужно принять его раньше, чем позже (или, наоборот, может быть, это следующий YUI, и я должен забыть, что когда-либо видел его).

Ответы [ 2 ]

1 голос
/ 30 марта 2012

Это не сработает.Вы не можете выбрать значения из селектора и превратить его в переменную: вам нужно будет сделать что-то вроде:

@sidebar_width: 40%;
.some_other_elements {
  width: @sidebar_width;
} 

ширина боковой панели будет установлена ​​на 40% от шириныродительский контейнер.

0 голосов
/ 31 марта 2012

Хотя это верно, если вы прекомпилируете, имейте в виду, что LESS действительно позволяет вам получить доступ к среде JS. Поэтому, если вы компилируете серверную часть с помощью Node, вы можете сделать что-то похожее на то, что вы пытаетесь, так как вы можете получить доступ к частям документа. Это может даже сработать, если вы скомпилируете его под нагрузкой, используя .js (хотя я бы не рекомендовал это по разным причинам). Пример из документации:

@height = `document.body.clientHeight`;

Может быть стоит обратить внимание на то, чего вы пытаетесь достичь.

...