0

CSSの場合:

@font-face {
  font-family: 'some_name';
  src: url('font_name.eot');
}

application.rb

config.assets.paths << "#{Rails.root}/app/assets/fonts"

Herokuではこの設定はうまく機能しますが、localhostでは機能しません。ローカルホストで非標準フォントを正しく表示するための何かが欠けていますか?私はマウンテンライオンで走っています。

ありがとう

4

2 に答える 2

1

この解決策は私のために働きます:

@font-face {
  font-family: 'some_name';
  src: url('/assets/font_name.eot');
}
于 2012-12-25T16:46:46.280 に答える
1

フォントのscrパス指定は相対的です。

実稼働環境では、すべてのアセットがコンパイルされ、さまざまなタイプのアセットが1つのフォルダーに配置され、でアクセスできます/assets/asset-name。つまり、フォントとcssファイルの両方が同じフォルダーにあり、相対パスでもかまいません。ただし、開発環境では、アセットはコンパイルされておらず、結合されていません。つまり、でアクセスされ/assets/ASSET-TYPE/asset-nameます。そのため、フォントはスタイルシートと同じフォルダーに配置されず、相対パスは実際のフォントファイルを見つけるのに役立ちません。

Railsにはasset-urlCSSヘルパーがあり、両方の環境で機能します。これは、へのコンパイル中に置き換えられますurl(path-to-asset)

@font-face {
  font-family: 'The Font';
  src: asset-url('the_font.eof', font);
}
于 2012-12-25T13:20:57.710 に答える