我在许多RubyOnRails应用程序中多次需要CSS样式表,实际上我需要一些揭秘的东西。
有什么区别:
//=require mystyles
和
*=require mystyles
两者似乎都有效,那有什么区别?
这是资产管道的一部分还是SASS的一部分还是纯粹的CSS?
答案 0 :(得分:7)
您给出的两个示例与样式表完全相同,但//=
语法是唯一适用于Javascript的语法。您还需要在开头(/*
)处的标准CSS注释和在需求块末尾的关闭注释(*/
),以使其忽略除资产管道之外的任何内容:
/* ...
*= require mystyles
*= require_self
*/
这些require指令只是资产管道的一部分,而不是CSS或SASS。要包含CSS或SASS的样式表,您可以使用@import
规则作为Blieque在其评论中说明。
查看Ruby on Rails指南网站上的manifest files and directives section of the Asset Pipeline guide,了解有关差异的更详细说明。那里也有一个可能有用的警告:
如果你想使用多个Sass文件,你通常应该使用 Sass @import规则而不是这些Sprockets指令。运用 Sprockets指令所有Sass文件都存在于自己的范围内, 使变量或混合仅在文档中可用 在。中定义。
答案 1 :(得分:0)
没有区别,只要它是一个有效的评论行,它就会起作用:)