2013-02-26 92 views
4

我想知道是否有一種方法可以,谷歌網頁字體是關閉使用此作爲字體源呢?就像我們如何做window.jquery檢查,看看谷歌jquery cdn是否關閉並提供替代文件?Google網頁字體向下備份?

+1

換句話說,您是否在尋找如何託管字體文件本地和使用? – 2013-02-26 18:43:20

+0

如果Google Web Fonts CDN關閉,則不可以。我的網站,這取決於什麼樣的字體家庭將完全搞砸了。由於整個網站和間距/寬度/等依賴於特定的字體。我想通過提供本地版本來防止這種情況。 – Steven 2013-02-26 18:45:07

+0

....那麼是的,是不是我上面說的? – 2013-02-26 19:11:45

回答

7

您可以簡單地指定安裝在您自己的服務器上的Web字體版本作爲第二個選項,例如,

<link href='https://fonts.googleapisx.com/css?family=Cantarell' rel='stylesheet'> 
<style> 
@font-face { 
    font-family: 'cantarellregular'; 
    src: url('cantarell-regular-webfont.eot'); 
    src: url('cantarell-regular-webfont.eot?#iefix') format('embedded-opentype'), 
     url('cantarell-regular-webfont.woff') format('woff'), 
     url('cantarell-regular-webfont.ttf') format('truetype'), 
     url('cantarell-regular-webfont.svg#cantarellregular') format('svg'); 
    font-weight: normal; 
    font-style: normal; 
} 
body { font-family: Cantarell, cantarellregular; } 
</style> 

您將需要一個不同的名稱爲您的服務器的字體家族;在這個例子中,我使用了FontSquirrel @font-face generator產生的名字。

這樣,瀏覽器會嘗試從Google網站首先獲取字體文件,如果由於某種原因失敗,它將從您的服務器獲取字體文件。

我想知道爲什麼你不要簡單地使用你自己的服務器的字體,如果你擔心谷歌網站被關閉。 (這種情況很少見,但從用戶設備到Google站點的連接可能會中斷,即使連接到您的站點是可以的。)

+0

我有一個類似的想法......但我不知道在瀏覽器恢復到列表中的下一個字體之前,頁面將被取消設計多長時間(例如,它是否會等待Google託管的字體請求超時) – 2013-02-26 19:15:21

+1

Googles CDN更快然後在本地託管它,如果這是有道理的。我只是想要一個備份。 – Steven 2013-02-26 23:34:40

+0

這不是非常正確,必須有辦法檢查谷歌網址,並決定是否在將URL更改爲本地主機之前立即停用,上面的解決方案缺少本地字體的第二個鏈接...至於谷歌字體今天是一週內第二次:/ – Ayyash 2013-07-19 09:50:25

1

您可以列出多個字體系列,它們將按照該順序顯示。例如

對於
font-family: 'Skranji', cursive, Verdana, Geneva, sans-serif; 

這將使用谷歌web字體Skranji,如果這是不存在,它會它撞至宋體,等等。

+1

不,如果Skranji不可用,它會碰到'cursive',這是一種瀏覽器定義的字體,被假定爲草書(連續寫入),但實際上可以是任何東西(可能有點奇怪)。 – 2013-02-26 18:59:42

+0

這裏是一個鏈接,可能會啓發你如何工作,謝謝:) http://www.w3.org/TR/CSS2/fonts.html#font-family-prop 我的例子完美按預期工作。 – 2013-02-26 19:14:04

+1

引用的CSS規範清楚地表明,字體名稱列表是按順序使用的。如果Skrjanji不可用,瀏覽器將使用'cursive'。 – 2013-02-26 21:26:06