Каков правильный / rails / наилучший способ вызова css для конкретных носителей (т. Е. Print, screen и т. Д.) При использовании конвейера ресурсов Rails 3.1? Я знаю, что об этом уже спрашивали, но все решения, которые я видел, кажутся очень хакерскими, а не элегантным решением Rails, которое я ожидал.
Насколько я могу судить, предлагаемый подход заключается в настройке папки таблиц стилей следующим образом:
assets
-stylesheets
--application.css
--application-print.css
--print
---custom-print.css
--screen
---custom-screen.css
содержимое application.css равно
/*
*= require_self
*= require_tree ./screen
*/
содержимое application-print.css равно
/*
*= require_self
*= require_tree ./print
*/
затем включить следующее в макет
<%= stylesheet_link_tag 'application', media = 'screen, projection' %>
<%= stylesheet_link_tag 'application-print', media = 'print' %>
Хорошо, пока все хорошо.
НО, в моем случае custom-print.css применяется на экране, а css не применяется к выводу на печать.
Кроме того, этот подход, похоже, влияет на изображения, вызываемые из css. то есть вместо поиска изображений в ресурсах / изображениях, теперь он ищет изображения в ресурсах / таблицах стилей / экране. Здесь может происходить что-то еще, так как это затрагивает только javascript css. Я сделаю еще несколько проверок и доложу.
Итак, мой вопрос: как вы относитесь к css для конкретных медиа в конвейере ресурсов Rails? Что считается лучшей практикой? И что я делаю не так?
Спасибо за ваше время!