6

何が悪いのかわかりません。私はこれを正しくやっているようです。アプリケーションでFontAwesomeを使用しようとしていますが、フォントが表示されません。私はというフォルダを持っており、そのfonts中にapplication.rb次の行が含まれています。

class Application < Rails::Application
 # Enable the asset pipeline
 config.assets.enabled = true
 # This line
 config.assets.paths << Rails.root.join("app", "assets", "fonts")

そして、Font-Awesomeに付属する2つのcssファイル(以下を参照)(IE7のものは必要ありません)の代わりにメインのcssを自分の中に入れましたapplication.css。フォントファイルを検出するためにURLを変更するよりも。

@font-face {
  font-family: "FontAwesome";
  src: url('<%= asset_path('fontawesome-webfont.eot') %>');
  src: 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;
}

サーバーの電源を切り、コードを変更するたびに再起動しましたが、それでもうまくいきませんでした。私は何が欠けていますか?

アップデート:

SASSまたはLESSを使用していません。多分それ@font-faceが問題ですか?私はこれまでこのタイプのコードの使用を見たことがありません。

アップデート

現在、font-awesome.cssファイルを使用しています。しかし、それは私のソースコードには表示されません。

<head>
  <link href="/favicon.ico" rel="shortcut icon" type="image/vnd.microsoft.icon">
  <link href="/assets/application.css?body=1" media="screen" rel="stylesheet" type="text/css">
  <link href="/assets/chosen.css?body=1" media="screen" rel="stylesheet" type="text/css">
  <script src="/assets/jquery.js?body=1" type="text/javascript"></script><style type="text/css"></style>
  <script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
  <script src="/assets/application.js?body=1" type="text/javascript"></script>
  <script src="/assets/chosen.jquery.min.js?body=1" type="text/javascript"></script>
</head>

完全な答え

これが、Font-Awesomeを正常に挿入する方法です。

引用元:https : //gist.github.com/2251151

1. Download font-awesome from https://github.com/FortAwesome/Font-Awesome

2. Put the font folder font folder in the app/assets. I renamed the folder from font to fonts to make it clearer

3. Add config.assets.paths << "#{Rails.root}/app/assets/fonts" to config/application.rb. This is to include the apps/assets/fonts folder in the asset pipeline

4. Put the font-awesome.css file in the app/assets/stylesheets folder

5. The first part of the css should be:

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

#---------------------------------------------------------------------------------------------

You should then be able to use:

<div style="font-size: 24px;">
  <i class="icon-camera-retro"></i> icon-camera-retro
</div>
4

1 に答える 1

4

そのコードをcss.scssファイルに入れてから、application.cssに含める必要があります(asset_pathsを使用するにはcss.scssが必要です)

更新:に変更し、名前*= font-awesomeをに変更する必要があります*= require font-awesomefont-awesome.cssfont-awesome.css.scss

于 2012-07-05T01:29:10.423 に答える