【问题标题】:FontAwesome icons not shown in Rails when deployed to Heroku部署到 Heroku 时,Rails 中未显示 FontAwesome 图标
【发布时间】:2014-08-04 09:26:19
【问题描述】:

我已经尝试了许多其他相关 StackOverflow 问题的解决方案,但我部署的应用程序仍然显示 白色矩形 框,而不是图标。在 localhost 上运行正常。

宝石文件

source 'https://rubygems.org'

gem 'rails', '4.0.2'

gem 'protected_attributes' 
gem 'font-awesome-sass'
...
group :development, :test do
  gem 'sqlite3' # Use sqlite3 as the database for Active Record
end

gem 'rails_12factor', group: :production

group :production do
gem 'pg'
gem 'rails_serve_static_assets'
end

application.css

*= require font-awesome

我已经预编译了资产,并修改了我的 application-xxx.css 文件(根据this answer)如下:

@font-face {
  font-family: 'FontAwesome';
  src: font-url('/assets/fontawesome-webfont.eot');
  src: font-url('/assets/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),       font-url('/assets/fontawesome-webfont.woff') format('woff'), font-url('/assets/fontawesome- webfont.ttf') format('truetype'), font-url('/assets/fontawesome- webfont.svg#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}

我的 production.rb 包含

config.serve_static_assets = true

当我加载应用程序时,控制台上没有错误但字体没有作为资源加载:

可能是什么问题?

编辑 问题解决了,恐怕我跑的时候没看控制台消息

rake assets:precompile RAILS_ENV=production

我有一些无效的 CSS,出于某种原因,在 localhost 中并不重要,但在生产中确实如此。顺便换了gem "font-awesome-rails"

【问题讨论】:

标签: css ruby-on-rails heroku font-awesome


【解决方案1】:

heroku 将您的 css 编译为 sass,他们提供了一个工具 http://css2sass.herokuapp.com/,可以帮助您将 css 转换为 sass。

要将gem "font-awesome-rails" 放入您的应用程序,您可以按照font-awesome-rails 中的说明进行操作,记住将css 文件包含在application.css 中非常重要,例如

 /*
 *= require font-awesome
 */

祝你一切顺利。并希望这会有所帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-06
    • 1970-01-01
    • 2013-01-01
    • 1970-01-01
    相关资源
    最近更新 更多