Im в процессе создания моего первого приложения Rails для Rails с использованием Rails 3.1.rc5. Моя проблема заключается в том, что я хочу, чтобы мой сайт визуализировал различные файлы CSS условно. Я использую Blueprint CSS и Im, пытаясь, чтобы звездочки/рельсы отображали 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
В моих стилях partial (haml):
<!--[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"
Это работает, но не особенно красиво. Ive сделал несколько часов поиска, чтобы даже получить это далеко, но Im надеясь, что theres более легкий способ сделать это, что Ive просто пропустил. Если бы я мог выборочно отображать определенные каталоги (без включения подкаталогов), это сделало бы весь процесс намного менее жестким.
Спасибо!