меньше.css совместное использование переменных между файлами

#less

#Меньше

Вопрос:

Я использую less.css для упрощения моего стиля css. Я хотел бы объявить переменную в одном меньшем файле и поделиться ее использованием со многими меньшими файлами. Возможно ли это? Например:

русский.меньше

@languageFloat: слева;

диаграмма.меньше

 div#footer a.web
{   
    display: block;
    float: @languageFloat;
    color: #cccccc;
    margin-right: 10px;
}
  

Ответ №1:

Лучший способ сделать это — @import использовать ваш файл LESS со всеми вашими переменными в нем. Вот синтаксис для @import ключевого слова:

 // For LESS file includes,
@import "lib.less";
// or
@import "lib"; // infers the .less extension

// and for plain CSS includes which are added but not parsed by LESS
@import "style.css";
  

Это работает особенно хорошо, если вы предоставляете файлы CSS своим пользователям (в отличие от встроенных в браузер less.js синтаксический анализ), потому @import что оператор объединит ваши файлы LESS и CSS в один CSS-файл. Возможно, вы можете рассмотреть возможность использования одного файла controller LESS, который включает ваши переменные, затем другие файлы LESS и CSS, чтобы конечным результатом был один файл, который вы отправляете в браузер.

Я полагаю, это было бы что-то простое, как это:

 // Controller.less
@import "english.less";
@import "chart.less";
  

Комментарии:

1. интересно, хотя мне нужно поделиться условным файлом css, английский можно заменить немецким, русским и т. Д. Могу ли я импортировать библиотеки css условно?

2. Интересно, я не понял эту проблему из вашего первоначального вопроса. В LESS нет условных выражений (пока), поэтому вам нужно думать декларативно. Создайте englishContainer.less файл, который импортирует english.less и chart.less , Затем germanContainer.less файл, который импортирует german.less и и chart.less т. Д., Вероятно, Это способ сделать это.