【问题标题】:CSS require SyntaxCSS 需要语法
【发布时间】:2023-03-12 03:05:01
【问题描述】:

我在许多 RubyOnRails 应用程序中多次需要 CSS 样式表,实际上我需要揭开一些神秘面纱。

有什么区别:

//=require mystyles

*=require mystyles

两者似乎都有效,那么有什么区别?

这是资产管道的一部分,还是 SASS 的一部分,或者只是普通的 CSS?

【问题讨论】:

  • 我从未见过使用“require”。要像其他脚本一样包含样式表,可以使用 import at-rule。

标签: ruby-on-rails sass asset-pipeline


【解决方案1】:

您给出的两个示例与样式表完全相同,但是 //= 语法是唯一适用于 Javascript 的语法。您还需要在开头添加标准 CSS 注释 (/*) 并在 require 块末尾添加关闭注释 (*/),以使其被资产管道以外的任何内容忽略:

/* ...
*= require mystyles
*= require_self
*/

这些 require 指令只是资产管道的一部分,而不是 CSS 或 SASS。要包含 CSS 或 SASS 的样式表,您将使用 Blieque 在评论中所述的 @import 规则。

查看 Ruby on Rails 指南网站上的 manifest files and directives section of the Asset Pipeline guide,了解有关差异的更详细说明。那里还给出了一个可能感兴趣的警告:

如果你想使用多个 Sass 文件,你通常应该使用 Sass @import 规则而不是这些 Sprockets 指令。使用 Sprockets 指令所有 Sass 文件都存在于它们自己的范围内, 使变量或 mixin 仅在它们的文档中可用 中定义的。

【讨论】:

    【解决方案2】:

    没有区别,只要是有效的注释行,它就可以工作:)

    【讨论】:

      猜你喜欢
      • 2011-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-04
      • 2019-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多