【问题标题】:How do I prevent scaffold.css from overriding my custom css?如何防止scaffold.css 覆盖我的自定义css?
【发布时间】:2012-04-12 20:58:12
【问题描述】:

我想不通。这可能是微不足道的,但我对 Rails 非常陌生。

如果您能提供帮助,请提前致谢!

答案:

我转到生成的文件,该文件将标题添加到我的页面并将包含的 css 文件更改为我自己的自定义文件。

【问题讨论】:

标签: ruby-on-rails css


【解决方案1】:

有一个关于不使用scaffold.css的问题,可能是你要找的?

Rails scaffold without the css file?

【讨论】:

  • “rails g scaffold MyModel --no-stylesheets”不明显怎么办?
【解决方案2】:

这不是最漂亮的 css,但在 css 中,您可以在语句后添加 '!important' 以覆盖所有“正常” css 语句。所以你会使用类似的东西:

border:0px !important;

在你的 CSS 中。

【讨论】:

  • 不要将!important 用于此类琐碎的事情。改为更改 CSS 的加载顺序。
  • 加载顺序只与同等特异性的规则有关,正如我在答案中已经指出的那样,它不是漂亮的 CSS,但在你被框架 css 卡住的情况下,它有时最有意义.
  • 无论哪种方式,这是一个很好的选择,需要注意,不像 !important 是邪恶的,只是另一种(丑陋的)影响特异性的方式。
【解决方案3】:

在 Rails 3.1 中,它的工作方式略有不同,因为默认情况下只包含应用程序样式。

由于这里提到了所有进一步包含的列表:Rails 3.1 Load css in particular order,因此您只需更改此列表的顺序或将文件添加到特定位置。

【讨论】:

    【解决方案4】:

    最后加载具有您想要应用的正确样式的 CSS 文件。

    或者正如其他人建议的那样,如果您无法更改 css 文件的加载顺序,您可以将 !important 添加到有问题的 css 中。

    body {
    color:#FFFFFF!important;
    }
    

    【讨论】:

      猜你喜欢
      • 2013-12-28
      • 2021-06-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-16
      • 1970-01-01
      • 1970-01-01
      • 2016-10-16
      相关资源
      最近更新 更多