是否可以将application.css更改为application.css.sass?
我想将我的application.css文件更改为sass文件并使用@import来提取所有必需的文件。然后,我想将application.css.sass导入到页面特定的sass文件中。这一切工作精美的发展,但是当我把它推到生产ENV在Heroku我得到这个错误:是否可以将application.css更改为application.css.sass?
Error compiling CSS asset
Sass::SyntaxError: File to import not found or unreadable: application
application.css.sass:
@import "reset"
@import "typography"
@import "buttons"
@import "junk"
$yellow: #f0f090
$orange: #f89818
$blue1: #184898
$blue2: #4888c8
body
background: ...
...
/* all the rest of the app-wide styling */
uniquePage.css.sass :
@import "application"
/*page specific styling*/
然后在需要的东西不同application.css页我叫
!!! 5
%html
%header
= stylesheet_link_tag "uniquePage"
Then I guess the question becomes, how do I make different manifest files for different css sets?
有几种方法Ø做到这一点:
1每页纸
这是你现在在做什么,但我会整理床单略有不同,在应用程序和独特的页面使用@imports。 (而不是将应用程序导入唯一页面)。
2.使用的只是那些
页的第二层您可以只改变该页面的第二层。所有页面都有应用程序表单,只需要更改就在唯一页面上添加第二个标签。这会导致额外的http请求。
3.重新组织你的CSS
除非额外的CSS是巨大的,你可能会更好的重构,包括在主文件中的代码。向独特页面的主体标签添加额外的类并调整任何CSS以便页面使用它是很容易的。
您仍然可以将该CSS放入唯一页面的文件中(以帮助维护),并将其导入到您的主文件中。
一般来说,除非CSS的变化是巨大的,我会尝试将它们合并到主CSS,否则去选择1
在Rails 3.1中,application.css
旨在用作清单文件。您不应该重命名它,也不应该将内容放入它中,除了需要或包含指令。
为您的目的使用不同的文件名。
另请注意,SCSS @import syntax这就像使用部分。如果您想要@import application
,则要导入的文件应称为_application
,而不是application
。
你应该改变它application.scss :)
请检查这两个RailsCasts:
http://railscasts.com/episodes/279-understanding-the-asset-pipeline
http://railscasts.com/episodes/282-upgrading-to-rails-3-1
+1 Simone的建议
那么我想的问题是,如何使不同的清单文件为不同的CSS集? –