修改 谢谢大家!问题似乎得到解决;我认为它与字体的路径有关,并为浏览器提供足够的替代字体类型来访问。我终于使用fontsquirrel.com和Paul Irish的@ font-face的防弹语法来运行一切。 :)
我正在尝试在我的网站上使用@ font-face,它在我的所有Mac浏览器(Firefox,Safari,Chrome)上都能正常运行。但我发现没有一个Windows浏览器显示字体。
这不是浏览器版本问题:即使使用FF5.0和Chrome 12.x也无法使用。
这不是服务器端问题:我通过上传到两个不同的服务器来测试它,并且两者都显示相同的行为。
这不是Windows版本问题:我在WinXP和Win7上测试过它。
这不是一个小问题“新字体看起来如何”问题:字体没有显示出来。
另外,奇怪的部分是:我尝试使用Wine在我的Mac上安装Windows Firefox4,然后运行它,它工作正常!但是在实际Windows上运行的相同Firefox 4将不会使用这些字体。这是否意味着发生的任何事情都是由OS检测触发的?
关于这里可能发生什么的任何想法?
修改:我使用以下内容:
@font-face {
font-family:"Name", src:url("./fonts/FontName.ttf") format("truetype");
}
并尝试过语法的变体,例如:
@font-face {
font-family:Name, src:url(fonts/FontName.ttf) format("truetype");
}
上述两种语法都在Mac上正确呈现,但在Windows上无法呈现。
答案 0 :(得分:1)
我想知道你的src
url
是否会窒息。
将此src:url("./fonts/FontName.ttf")
更改为此src:url("../fonts/FontName.ttf")
(添加另一个句点)。
或者您可以在没有句点的情况下尝试:src:url("/fonts/FontName.ttf")
。
或者将其放在CSS文件夹中并完全删除路径。
您也可以尝试单引号'
而不是"
。
答案 1 :(得分:1)
这不是正确的语法:
@font-face {
font-family:"Name", src:url("./fonts/FontName.ttf") format("truetype");
}
使用分号而不是逗号,如下所示:
@font-face {
font-family: "Name";
src: url("./fonts/FontName.ttf") format("truetype");
}
但您可以考虑使用Paul Irish的Bulletproof @ font-face语法:http://paulirish.com/2009/bulletproof-font-face-implementation-syntax/