2013-02-26 35 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