Используйте несколько файлов SASS - PullRequest
14 голосов
/ 06 апреля 2011

Я хочу разделить мой (гигантский) глобальный файл CSS на несколько файлов. Я использую sass. Есть ли простой способ заставить sass просматривать несколько файлов? Я думаю, что мог бы использовать @import, но просто хотел узнать, есть ли другой (лучший) способ.

Заранее спасибо.

Ответы [ 2 ]

15 голосов
/ 07 апреля 2011

То, что Рич Брэдшоу упоминает правильно, однако вот еще один подход, который вы могли бы принять.

Создайте 1 файл scss с именем combined.scss (например) , затем внутри этого файла @import все ваши файлы scss, затем просто запустите sass --style compressed --watch combined.scss:combined.css, и он обнаружит изменения в импортированных файлах scss и при необходимости перекомпилирует.

Combined.scss пример:

@import "reset";
@import "layout";
@import "styles";
@import "ie";

Таким образом, когда вы вносите изменения в layout.scss файл, combined.scss будет перекомпилирован, и все ваши фактические html-страницы будут ссылаться на combined.css.

Но какЯ сказал, что решение Rich Bradshaw будет работать так же хорошо, и в зависимости от проекта, над которым вы работаете, может быть лучше использовать.

8 голосов
/ 06 апреля 2011

Я использую импорт, затем захожу в мой медиа-каталог, который включает в себя каталог css со всеми моими css и запускаю sass --style compressed --watch css:css.При этом получается один файл CSS из множества файлов scss.

Чтобы пояснить это, если вы называете импортированные файлы, начиная с подчеркивания, тогда SASS не пытается их скомпилировать.

Итак,если у вас есть файл с именем style.scss, содержащий эти строки,

@import 'reset';
@import 'blog';

и некоторые файлы с именами _reset.scss и _blog.scss будут означать, что при запуске вышеуказанной команды создается один файл с именем style.cssкоторый содержит все остальные файлы.Переменные, объявленные выше, также работают.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...