Css 允许在多个Rails应用程序上自定义主题
我有两个相同Rails应用程序的实例,我想在每个应用程序上允许一些自定义主题选项。例如,不同的标题颜色或列宽 我仍然希望保持相同的代码基础,所以我不能只更改每个代码的CSS,而且使用环境变量似乎不是一个好主意。我还希望保持资产管道的优化效益Css 允许在多个Rails应用程序上自定义主题,css,ruby-on-rails,ruby-on-rails-3.2,sass,themes,Css,Ruby On Rails,Ruby On Rails 3.2,Sass,Themes,我有两个相同Rails应用程序的实例,我想在每个应用程序上允许一些自定义主题选项。例如,不同的标题颜色或列宽 我仍然希望保持相同的代码基础,所以我不能只更改每个代码的CSS,而且使用环境变量似乎不是一个好主意。我还希望保持资产管道的优化效益 我可以使用什么在应用程序的每个实例中实现轻松的主题定制 您可以创建多个清单文件,其中包含所需的任何部分文件。例如,您可以创建一个具有常见样式的core.css文件,然后创建blue.css、green.css等文件,您可以选择包括这些文件。这本书的灵感来源于
我可以使用什么在应用程序的每个实例中实现轻松的主题定制 您可以创建多个清单文件,其中包含所需的任何部分文件。例如,您可以创建一个具有常见样式的
core.css
文件,然后创建blue.css
、green.css
等文件,您可以选择包括这些文件。这本书的灵感来源于,更多信息请查看
如果“自定义主题”是指用户可自定义,则只需使用存储应包含在应用程序中的清单文件的名称即可。但是,如果您这样做了,请不要忘记用户可以更改cookie,因此要小心注射 您可以为每个主题创建单独的布局 在app/views/layouts/theme\u one\u base.html.haml下
<html>
<head>
<%= stylesheet_link_tag "application" %>
</head>
<body id='theme_one'>
<%= yield %>
</body>
</html>
<html>
<head>
<%= stylesheet_link_tag "theme_one" %>
</head>
<body>
<%= yield %>
</body>
</html>
清单文件theme\u one.css.scss
包含
/**
*= require_self
*= require_tree ./theme_one
*/
您将更新base\u layout.html.haml
<html>
<head>
<%= stylesheet_link_tag "application" %>
</head>
<body id='theme_one'>
<%= yield %>
</body>
</html>
<html>
<head>
<%= stylesheet_link_tag "theme_one" %>
</head>
<body>
<%= yield %>
</body>
</html>
基本上,每个基本布局都包含自己的一组独立样式表
更新1-添加有关覆盖布局的信息