特定于页面的CSS与Rails应用程序

参见英文答案 > Using Rails 3.1,where do you put your “page specific” JavaScript code?29个
我想为我的Rails应用程序测试两个不同的接口.理想情况下,我希望有两个单独的css文件,一个与每个接口相关联(例如,new_interface.css和old_interface.css).我目前有两个不同的接口部分,一个叫_new_interface.html.erb,一个叫_old_interface.html.erb.如果我想在加载特定视图时调用正确的css文件,我该怎么做?例如,如果我加载_new_interface.html.erb,我希望它加载new_interface.css文件并忽略old_interface.css文件.

我的application.css:

/*
*= require_tree
*/

解决方法

这个问题似乎针对您需要做的事情: Using Rails 3.1 assets pipeline to conditionally use certain css

简而言之,您需要将app / assets / stylesheet文件夹重新组织到一些子目录中并更改清单文件,以便在运行时不会将所有内容捆绑在一起.

然后,您可以在视图中放置一些条件逻辑,以便为作业加载正确的css. content_for标签可能在这里很有用.您可以编辑app / views / layouts / application.html.erb并在其他javascript<%= yield:view_specific_css%>之后添加一行.然后在您的视图文件中,您可以使用

<% content_for :view_specific_css do %>
    <%= stylesheet_link_tag "whatever %>
<% end %>

相关文章

Css3如何实现鼠标移上变长特效?(图文+视频)
css3怎么实现鼠标悬停图片时缓慢变大效果?(图文+视频)
jquery如何实现点击网页回到顶部效果?(图文+视频)
css3边框阴影效果怎么做?(图文+视频)
css怎么实现圆角边框和圆形效果?(图文+视频教程)
Css3如何实现旋转移动动画特效