В чем ценность Compass для Rails 3.1? - PullRequest
27 голосов
/ 11 июня 2011

Я пытаюсь решить, стоит ли мне включать Компас при запуске нового Rails 3.1 проекта.Я не использовал Compass раньше.

Rails 3.1 теперь поддерживает SCSS напрямую.Конвейер ресурсов Rails 3.1 (через звездочки) теперь автоматически компилирует таблицы стилей.И я могу использовать версию SCSS CSS-фреймворка, например, Blueprint напрямую.

Какие преимущества я получу от использования Compass с Rails 3.1?

Ответы [ 4 ]

20 голосов
/ 11 июня 2011

Compass предоставляет множество хороших миксинов, довольно мощный генератор спрайтов и тесную интеграцию с Blueprint, что означает, что вам не нужно использовать несемантические col классы по всему HTML.

Нет ничего особенного в том, чтобы использовать Compass, если вы не используете миксины, но, опять же, нет большого преимущества в использовании SCSS, если вы их не используете (вложение и переменные хороши, ноmixins помогает хранить специфичную для браузера реализацию свойств в одном месте).

Однако я обнаружил, что Blueprint доставляет больше хлопот, чем оно того стоит.Я бы по-прежнему использовал Compass для миксинов, но сейчас совместимость между Rails 3.1 и Compass ужасна (вам нужно прыгнуть через несколько обручей, и вы все еще жертвуете некоторыми функциями).

В некотором родственном примечании способ, которым Rails 3.1 компилирует ресурсы, довольно "сломан".Он не учитывает, как сообщество использовало Sass в течение последнего года или двух, храня переменные, миксины и частичные страницы отдельно для включения в основной файл по порядку.«Автоматический» способ, при котором Sprockets загружает и компилирует Sass, разъединяет файлы друг от друга, поэтому даже если вы вручную определяете порядок загрузки в application.css, переменные, которые вы задали в файле, не будут доступны для последующих загруженных файлов.

14 голосов
/ 22 августа 2011

Бурбон (от Thoughtbot) - это легкая альтернатива компасу, который хорошо интегрируется с рельсами 3.1.

Он имеет основные миксины css3, которые вы получаете с компасом (фоновые изображения, тени от ящиков, радиус границы, градиенты ...). У него также есть помощники для стилей кнопок, «сетки» вашего макета и еще несколько вкусностей.

Вы можете упустить некоторые из мощных функций компаса, но это легко можно преодолеть с помощью силы sass: просто скопируйте / создайте свой собственный миксин!

Компас часто вызывал у меня головную боль при обновлении приложения rails. Я ценю простоту Бурбона (хотя это может вызвать головную боль ... утром :-))

1 голос
/ 11 июня 2011

Плагин html5boilerplate компаса также очень экономит время, поэтому по этим причинам я бы использовал компас

1 голос
/ 11 июня 2011

Compass - это независимая от дизайна среда - например, вам не нужно беспокоиться о том, какие браузеры есть у пользователей.

например, у Compass есть надстройки, такие как, например, функции кросс-браузера CSS3: http://compass -style.org / reference / compass / css3 / таким образом, вы можете указать вещи в своих файлах .scss независимо от браузера

Примечание:

Rails 3.1 обрабатывает файлы .scss, по одному - например, если вы определяете переменные в одном файле, они не переносятся в другие файлы .scss.ИМХО не очень оптимальное решение.

...