2013-01-22 76 views
4

我在我的新网站上添加了自定义字体(Segoe UI),但是字体文件大约是1mb,这需要几秒钟的时间才能第一次加载。CSS字体只有在字体不存在的情况下才能下载

我在Mac上,它在OSX中不是标准的。然而,据我所知,它包含在Windows中。

如何才能使CSS 只有加载字体,如果它尚未在客户端上存在?

+0

你们接受一个JavaScript的解决方案吗? – fcalderan

+0

我宁愿如果我可以保留在CSS中。但是,如果这是不可能的,'JS'将不得不做。这是一个有这么慢的加载首页的痛苦 –

+1

看看这是否可能重复:[@ font-face src:local - 如何使用本地字体,如果用户已经拥有它?](http://stackoverflow.com/questions/ 3837249/font-face-src-local-how-to-use-the-local-font-if-the-user-already-have-it)可以帮助你。 – fcalderan

回答

7

使用local('Segoe UI')制定。似乎它优先考虑从头到尾的来源。

这里的工作代码

@font-face { 
    font-family: Segoe; 
    src: url('fonts/segoeui.eot'); 
    src: local('Segoe UI'), url('fonts/segoeui.ttf') format('truetype'), url('fonts/segoeui.woff') format('woff'); 
} 
-3

如果你很高兴使用JavaScript解决方案这可以解决你的问题:

if(navigator.platform.match('Mac') !== null) { 
    // here you can init your font-face via js. 
} 
+0

这个CSS解决方案是'local('Segoe UI')' –

+0

和?是否足以投下我的解决方案? –

相关问题