Rails:Font Awesome不下载

时间:2013-01-09 22:41:02

标签: ruby-on-rails twitter-bootstrap twitter-bootstrap-rails font-awesome

我只是在我的项目中运行bundle update,并且Font-Awesome不再有效。

我尝试了font-awesome-sass-rails和twitter-bootstrap-rails(其中包括很棒的字体),我在两者中都有相同的行为:显示正方形而不是图标。

我检查已编译的CSS,并尝试下载字体:

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

所以我尝试下载myapp / assets / fontawesome-webfont.woff,它确实有效。 我无法理解这里的问题是什么。

我的application.css.scss

*
 *= require_self
 *= require bootstrap-datepicker
 *= require_tree .
 */

@import "bootstrap";
body {
  padding-top: 60px;
}
@import "bootstrap-responsive";
@import "font-awesome";

@font-face {
  font-family: 'Pontano Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Pontano Sans'), local('PontanoSans-Regular'), url(/assets/pontanosans.woff) format('woff');
}

*{
  font-family: 'Pontano Sans', sans-serif !important;
}

.table tbody tr:hover {
  cursor: pointer;
}

// rest of file...
例如,pontano-sans就像预期的那样工作。

我的Gemfile(只是资产组):

group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'bootstrap-sass'
  gem 'font-awesome-sass-rails'
  gem 'libv8', :platforms => :ruby
  gem 'therubyracer', '>= 0.11.1', :require => 'v8', :platforms => :ruby
  gem 'uglifier', '>= 1.0.3'
  gem 'turbolinks'
  gem 'mousetrap-rails'
  gem 'jquery-turbolinks'
  gem 'spinjs-rails'
  gem 'ajaxspin'
  gem 'chosen-rails'
  gem 'jquery-rails'
  gem 'turbo-sprockets-rails3'
  gem 'bootstrap-datepicker-rails'
end

我在这里做错了什么?

提前致谢。


EDIT!

看起来像一个错误:https://github.com/littlebtc/font-awesome-sass-rails/issues/22

3 个答案:

答案 0 :(得分:5)

我建议更改方法:在app/assets下创建一个名为fonts的新目录。然后复制那里的字形图像并将其包含在application.rb文件中的资源中,如下所示:

config.assets.paths << Rails.root.join("app", "assets", "fonts")

之后,您应该将font-awesome.css重命名为font-awesome.css.scss.erb并更改其中的@font-face声明:

@font-face {
  font-family: "FontAwesome";
  src: url('<%= asset_path('fontawesome-webfont.eot')%>');
  src: url('<%= asset_path('fontawesome-webfont.eot?#iefix')%>') format('eot'), url('<%=    asset_path('fontawesome-webfont.woff')%>') format('woff'), url('<%= asset_path('fontawesome-webfont.ttf')%>') format('truetype'), url('<%= asset_path('fontawesome-webfont.svg#FontAwesome')%>') format('svg');
 font-weight: normal;
 font-style: normal;
 }

此解决方案包括移除宝石'font-awesome-sass-rails'

答案 1 :(得分:0)

嗯,这是bug

现在我使用我自己的存储库分支。

答案 2 :(得分:0)

Bug和here就是这个原因。 尝试使用

@import "font-awesome.css";

而不是

@import "font-awesome";