我在我的新网站上添加了自定义字体(Segoe UI
),但是字体文件大约是1mb,这需要几秒钟的时间才能第一次加载。CSS字体只有在字体不存在的情况下才能下载
我在Mac上,它在OSX中不是标准的。然而,据我所知,它包含在Windows中。
如何才能使CSS 只有加载字体,如果它尚未在客户端上存在?
我在我的新网站上添加了自定义字体(Segoe UI
),但是字体文件大约是1mb,这需要几秒钟的时间才能第一次加载。CSS字体只有在字体不存在的情况下才能下载
我在Mac上,它在OSX中不是标准的。然而,据我所知,它包含在Windows中。
如何才能使CSS 只有加载字体,如果它尚未在客户端上存在?
使用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');
}
如果你很高兴使用JavaScript解决方案这可以解决你的问题:
if(navigator.platform.match('Mac') !== null) {
// here you can init your font-face via js.
}
这个CSS解决方案是'local('Segoe UI')' –
和?是否足以投下我的解决方案? –
你们接受一个JavaScript的解决方案吗? – fcalderan
我宁愿如果我可以保留在CSS中。但是,如果这是不可能的,'JS'将不得不做。这是一个有这么慢的加载首页的痛苦 –
看看这是否可能重复:[@ 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