我有一个简单的html / css布局,通过@ font-face使用自定义字体:
@font-face {
font-family: 'Gotham-Medium';
src: url('../Font/Gotham-Medium.eot');
src: url('../Font/Gotham-Medium.eot?#iefix') format('embedded-opentype'),
url('../Font/Gotham-Medium.ttf') format('truetype'),
url('../Font/Gotham-Medium.svg#Gotham-Medium') format('svg');
font-weight: normal;
font-style: normal;
}
包括IE6在内的所有浏览器都正确加载字体 - 但我在Safari(5.0.4)中收到警告。
资源解释为字体但使用MIME类型传输 应用/八位字节流。
有趣的是,在Windows / Safari字体上显示确定(.ttf文件)但显示警告,但在Mac / Safari上,字体显示为透明/不可见 - 根本没有显示任何文本(.ttf字体文件确实加载+警告消息也出现在控制台中。)
有什么想法吗?
答案 0 :(得分:0)
当您的浏览器向网络服务器询问字体文件时,网络服务器会回复标题信息和文件内容。而且似乎web服务器为.ttf文件提供了mime-type application / octet-stream。浏览器可以期待一些特殊的mime类型的字体,比如application / x-font-ttf
您可以在apache配置中使用AddType application/x-font-ttf .ttf
来指定mime类型。
顺便说一下,@ font-face中有2个src部分。可能你应该把它们组合成一个用逗号分隔每个来源。