2012-07-05 49 views
5

我在一個Rails項目中,並且使用了/assets/fonts文件夾中的兩種字體。在Ruby on Rails項目中加載字體花費太多時間

@font-face { 
    font-family: FuturaStd-Light; 
    src: url("/assets/fonts/FuturaStd-Light.otf"); 
} 

@font-face { 
    font-family: HelveticaNeue; 
    src: url("/assets/fonts//HelveticaNeue.dfont"); 
} 

字體是非常大的文件(特別是第二個),它將永久加載它們。在每個頁面中,文本都顯示在其他所有內容之後。

有沒有更好的方法來加載字體?有沒有辦法緩存它們?有任何想法嗎?

回答

3

@ font-face是一種很棒的技術,但是大字體文件肯定會減慢你的網站速度。還有,你可以用它來解決這個問題許多技術:

有一點需要特別注意的是,如果在樣式表之前有一個SCRIPT元素,IE將阻止整個頁面的呈現。所以確保你所有的樣式錶鏈接都在你正在加載的任何javascript文件之上。

延伸閱讀:

1

我與斯科特同意,@字體面可能會在您的網站慢下來,所以要根據你的目標,你可能想要使用谷歌字體,打字套件或其他在線字體提供商。對於我目前正在處理的項目,我選擇了谷歌字體。所有你需要做的就是添加片斷谷歌網頁字體你到你的applications.html.erb:

<link href='http://fonts.googleapis.com/css?family=PT+Sans:400,700,400italic' rel='stylesheet' type='text/css'> 

然後將其添加到您的css文件:

h1 { 
    font-family: "PT Sans", Arial, Helvetica, sans-serif; 
}