我在新资产管道以及SASS和SCSS上找到了大量资源。但是有一个问题让我感到困惑:命名CSS文件的正确方法是什么?是.css.scss
,还是我不能跟.scss
一起使用?
在我见过的几乎所有例子中,他们都有前者,因此必须有理由。我更喜欢后者,因为它使我的文件树在ol'眼球上更容易。
无论如何,仅仅因为某些事情并不意味着它是正确的,所以我想知道什么是正确的以及为什么。
答案 0 :(得分:6)
虽然理查德·赫尔斯提供了真实有用的信息,但并没有解决所提出的具体问题。
我已经确定,即使 .scss
和.css.scss
之间似乎没有任何技术差异,也是正确的约定来命名您的SCSS文件也包括.css(as mentioned in this Tweet)。
2013年5月31日更新:我认为这会继续收到不必要的downvotes而没有任何实质性评论,但这绝对是我原来问题的正确答案。
2016年8月27日更新:对于任何绊脚石的人来说,似乎此讨论不再适用于Rails v5 +和Sprockets v3.0 +(请参阅SASS Rails commit d355de9 on GitHub)。生成新的Rails应用程序将创建仅包含.scss
扩展名的SCSS文件(无.css.scss
)。
答案 1 :(得分:4)
正确的方法是仅在您要将某种处理器应用于文件时才使用扩展名。处理按照扩展从右到左的顺序应用。
标有.css的文件只是一个普通的旧css文件。
标有.css.erb的文件是一个将被处理为erb然后被视为CSS的文件。
文件.css.scss.erb将获得两种类型的处理。首先是ERB,然后是SCSS。
如果你没有在文件或SCSS中使用ERB,那么你不需要添加任何额外的扩展。
注意:如果您需要在CSS中引用图像,那么您将不得不使用SCSS或ERB,因为它们具有帮助方法,这些方法在资产管道中使用时会生成正确的URL。