Я нахожусь в процессе создания моего первого сольного Rails-приложения с использованием Rails 3.1.rc5. Моя проблема в том, что я хочу, чтобы мой сайт отображал различные CSS-файлы условно. Я использую Blueprint CSS и пытаюсь сделать рендеры звездочек / рельсов screen.css
большую часть времени, print.css
только при печати и ie.css
только при доступе к сайту из Internet Explorer.
К сожалению, команда по умолчанию *= require_tree
в application.css
манифесте включает в себя все в assets/stylesheets
каталоге и приводит к неприятному беспорядку CSS. Мой текущий обходной путь - это своего рода метод грубой силы, в котором я задаю все индивидуально:
В application.css:
*= require_self
*= require home.css
...
*= require blueprint/screen.css
В моих таблицах стилей частично (хамл):
<!--[if lt IE 9]
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
![endif]-->
= stylesheet_link_tag "application"
= stylesheet_link_tag 'blueprint/print', media: 'print'
<!--[if lt IE8]]
= stylesheet_link_tag 'blueprint/ie'
![endif]-->
= javascript_include_tag "application"
Это работает, но это не особенно красиво. Я провел несколько часов в поисках, чтобы даже зайти так далеко, но я надеюсь, что есть какой-то более простой способ сделать это, который я только что пропустил. Если бы я мог даже выборочно отображать определенные каталоги (без включения подкаталогов), это сделало бы весь процесс намного менее жестким.
Спасибо!