我希望在custom
中包含几个不同的自定义样式表的子目录(称为assets/stylesheets
)。我的应用程序用于管理不同的事件,每个事件都有不同的应用程序运行实例。这些自定义样式表将包含特定于实例的css(即与事件徽标匹配的不同背景颜色)。在应用程序中有一个EventsConfiguration
模型,我希望能够选择assets/stylesheets/custom
中的一个样式表作为该模型中的变量保存。然后我不想要使用任何其他自定义css文件。
应该在所有其他css文件(编译成application.scss)之后加载自定义css文件,以便它可以覆盖。
现在application.scss
中有*= require_tree .
。保留链接会自动包含所有css文件但我希望它排除custom
子目录,这样会很好。有没有办法做到这一点?
答案 0 :(得分:1)
我首先要重新组织资产目录。一个建议是:
assets/stylesheets/common
application.scss
包含以下内容以及任何其他非自定义的样式表:
*= require_tree ./common
创建特定于事件的样式表(custom_event.scss
):
*= require_tree ./common
*= require_tree ./custom_event
然后,您可以根据配置参数在视图中要求正确的样式表。从长远来看,保持样式表模块化将非常有用。
答案 1 :(得分:0)
排除custom
目录的最简单方法是将custom
目录移至lib/assets/stylesheets
,然后application.scss
不会包含该目录。