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 просто пропустил. Если бы я мог выборочно отображать определенные каталоги (без включения подкаталогов), это сделало бы весь процесс намного менее жестким.
Спасибо!