2

我有一个名为 admin 的视图,我想使用仅在此页面中使用的 css 文件 admin.css。我在布局中创建了一个新的布局 admin.html.erb。我在其中放了什么以及如何编辑 application.css 以便 admin.css 仅在管理视图中使用,但所有其他样式表也包含在管理视图中?

谢谢!到目前为止,这就是我在 application.css 中所拥有的

/*
 * This is a manifest file that'll automatically include all the stylesheets available in this directory
 * and any sub-directories. You're free to add application-wide styles to this file and they'll appear at
 * the top of the compiled file, but it's generally better to create a new file per   style scope.
 *= require bootstrap_and_overrides
 *= require custom
 *= require admin
 *= require_self
*/
4

1 回答 1

1

不要require admin在你的application.css,否则你会在你处理的 css 文件中包含这个文件的内容。

保持admin.css原样(此文件将包含您所有的管理 css 资源,如果需要,您甚至可以引用其他文件),require admin从 中删除该行application.css,并在您的 中添加以下内容application.rb

config.assets.precompile += ['admin.css']

这将指示资产管道预编译admin.css为单独的文件。

然后在您的管理布局中包括:

<%= stylesheet_link_tag "application" %>
<%= stylesheet_link_tag "admin" %>

在您的非管理员布局中只包含应用程序。

于 2013-03-15T03:52:42.633 回答