2014-01-16 74 views
0

添加字體到我的rails 3.2 Ruby 1.9應用程序在我的本地工作,但不是在我推到heroku後。將字體添加到Rails 3.2應用

1-我確保字體沒有安裝在我的本地機器上。 2-加入我的字體文件到我在/ app /資產目錄創建的字體目錄 3-下面的代碼添加到我的application.rb中文件

#precompile fonts 
config.assets.precompile << /\.(?:svg|eot|woff|ttf)$/ 

#add fonts directory to assets pipeline 
config.assets.paths << "#{Rails.root}/app/assets/fonts" 

4-加入下列到我application.css .scss文件

@font-face { 
    font-family: Steinerlight; 
    src: url('Steinerlight.ttf')format('truetype'); 
} 

5-稱爲字體在我的CSS文件,像這樣:

font-family: "Steinerlight", sans-serif; 

5-我確信在CSS文件中的字體名稱exactl y與app/assets/fonts目錄中的文件名相同

當我在我的本地頁面上預編譯重新啓動服務器時,顯示出我添加的字體樣式。 (再次,字體沒有安裝在我的電腦上)。

問題是當我預編譯並推送應用程序到heroku頁面的樣式與輔助字體(無襯線)而不是我添加的一個。關於可能是什麼問題的任何建議?

+0

你確定你的推字體服務器? – Drew

+0

@Drew我不知道我怎麼會沒有。我所有的其他資產都顯示得很好。除非我在預編譯代碼config.assets.precompile << /\.(?:svg|eot|woff|ttf)$/ – Renegade

回答

1

解決了它。這是一個瀏覽器的問題與IE瀏覽器的字體在Firefox加載罰款和鉻

加入即特定的語法,它工作正常

src: url('Steinerlight.eot'); /* IE9 Compat Modes */ 
    src: url('Steinerlight.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ 
+0

中犯了一個錯誤,而且,正如你提醒一下,以防萬一你使用CDN未來,Firefox不支持從CDN服務的字體 – Drew

+0

不要忘記標記爲答案:) – Miles