【问题标题】:css files not loading with application.scsscss 文件未与 application.scss 一起加载
【发布时间】:2015-11-26 06:33:53
【问题描述】:

我在我的供应商库中添加了一些 css 文件,我正试图让它们在我的应用程序上运行。当我打开开发页面查看文件时,我看到了完整的 css

 http://0.0.0.0:3000/assets/application.css.scss

但它在实际页面上不起作用。当我查看页面的源代码时,我看到了

<link data-turbolinks-track="true" href="/assets/application.css?body=1" media="all" rel="stylesheet" />
<script data-turbolinks-track="true" src="/assets/jquery.js?body=1"></script>

但它显示的是 js 文件,而不是附加的 css 文件。为什么它会显示 js 文件而不显示 css 文件。我像这样将附加的 css 文件导入到 application.scss...

@import "fontello";
@import "font-awesome";
@import "animation";
@import "hover";
@import "morphext";
@import "settings-ie8";
@import "settings";
@import "fontello-codes";
@import "fontello-embedded";
@import "fontello-ie7-codes";
@import "fontello-ie7";
@import "owl.carousel";
@import "owl.theme";
@import "owl.transitions";
@import "bootstrap";
@import "bootstrap-theme";

就像我说的,当我在浏览器中拉出 application.scss 文件时,我在该文件中看到它,但它在页面上不起作用。这是我的页面视图上的链接...

<%= stylesheet_link_tag    "application", media: 'all', "data-turbolinks-track" => true %>
<%= javascript_include_tag "application", "rails.validations", "data-turbolinks-track" => true %> 

我注意到在源代码中它首先显示 turbolinks 而不是链接 href... 到 application.css 文件。我错过了什么?

--更新--

但是我注意到,如果我将 css 的调用更改为手动添加每个 css,那么它会出现在源代码中,

<%= stylesheet_link_tag    "application", "hover", media: 'all', "data-turbolinks-track" => true %>

页面源代码变成...

<link data-turbolinks-track="true" href="/assets/application.css?body=1" media="all" rel="stylesheet" />
<link data-turbolinks-track="true" href="/assets/hover.css?body=1" media="all" rel="stylesheet" />
    <script data-turbolinks-track="true" src="/assets/jquery.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/jquery_ujs.js?body=1"></script>  
etc...

那为什么当我只是调用 application.scss 时它没有将 css 文件放在一起?

【问题讨论】:

  • 您是否通过重启server 进行了检查? .重启然后测试文件中完成的css编辑就好了。
  • 是的,不是这样的

标签: javascript jquery css ruby-on-rails bootstrap-sass


【解决方案1】:

你有没有像这样在 application.rb 文件中加载供应商库:-

config.assets.paths << Rails.root.join('vendor', 'assets')

然后在您的 application.css.scss 中要求这些,例如:

@import "external_library/contents";

【讨论】:

  • 此外,资产管道已打开,它正在识别 css 文件并找到它们,但由于某种原因它没有应用它。
猜你喜欢
  • 1970-01-01
  • 2018-02-28
  • 1970-01-01
  • 2018-05-06
  • 1970-01-01
  • 2019-03-06
  • 2016-08-10
  • 2017-06-28
  • 1970-01-01
相关资源
最近更新 更多