在我的网站http://helvetitee.com上,我有以下字体堆栈:
font-family: "helvetica neue", helvetica, nimbus-sans;
从TypeKit中提取Nimbus Sans(网络字体)。
在Windows计算机上,无论使用何种浏览器,用户都会显示Arial。似乎Helvetica被Windows渲染为Arial,而不是回落到Nimbus(这是一个Helvetica克隆,因此比Arial更好)。
除了OS嗅探之外,有没有办法防止这种情况发生?这是一个已知的问题吗?对于Windows来说,假设显示Arial而不是Helvetica似乎是自由的。
答案 0 :(得分:9)
Windows将Arial替换为Helvetica。 (特别是Helvetica;而不是Helvetica Neue。)一个简单的方法就是声明font-family: Helvetica, Courier
。 Windows平台上的浏览器然后使用Arial,而不是Courier(正如他们应该的那样)。
这可以通过编辑Windows注册表来更改,但作为Web作者,您无法对其进行任何操作(除了尝试通过浏览器嗅探操作系统嗅探)。这是一个老问题(至少可以追溯到Windows 3,我认为),虽然不是很广为人知。
答案 1 :(得分:2)
Windows没有任何这些字体,但足够聪明,可以默认使用sans-serif字体,这是arial。
网络安全替代方案类似于font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
至于使用可以嵌入的webfont fonts.com has Helvetica Neue 45 Light。
答案 2 :(得分:2)
是的,默认配置中的Windows注册表将Arial替换为Helvetica,并且此替换优先于除Opera之外的每个主要浏览器中的字体堆栈回退。所以大多数Windows用户都会看到Arial而不是Helvetica ,除非 Helvetica先于字体堆栈
答案 3 :(得分:0)
据我所知,Windows不附带Helvetica(或其任何家族成员),如果它不是已安装的字体,则无法在网站上使用。
Arial被认为是Helvetica的公然撕裂(尽管它基于Monotype Grotesque,它被认为是Helvetica的替代品),因此微软不必向Haas Typefoundry(Helvetica的创建者和许可者)支付高昂的许可费用家族)
我的建议是尝试使用webfonts,您可以使用它实际嵌入字体。 Font Squirrel是一个很好的起点。 (但请记住,在没有许可证的情况下嵌入Helvetica Neue在技术上是违规的。)
答案 4 :(得分:0)
跨浏览器和设备的最佳字体堆栈,我认为
body {
font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
font-weight: 300;
}
另外,使用
body {
font-family: sans-serif
}
在你的font-stacks覆盖浏览器默认值之前。