这是一个非常令人沮丧的错误!
我正在使用Font Awesome(本地托管)和其他几种字体,它们间歇性地无法加载——不是 404,只是完全没有出现在开发者工具的“网络”选项卡中,也没有在页面上呈现。
它似乎最常发生在第一次加载页面时 - 刷新字体然后加载/渲染 OK。但是,清除浏览器缓存并不能可靠地重现该问题。
我知道路径没问题,因为大约 80% 的时间字体呈现正常。这是一个间歇性问题。我在 OSX 上使用 Chrome v26。
我的 CSS 看起来像这样:
<head>
...
<link rel="stylesheet" type="text/css" href="${context}/resources/font/opensans.css" />
<link rel="stylesheet" type="text/css" href="${context}/resources/css/font-awesome.min.css" />
...
CSS 文件如下所示:
@font-face {
font-family: 'open_sanslight';
src: url('opensans-light-webfont.eot');
src: url('opensans-light-webfont.eot?#iefix') format('embedded-opentype'),
url('opensans-light-webfont.woff') format('woff'),
url('opensans-light-webfont.ttf') format('truetype'),
url('opensans-light-webfont.svg#open_sanslight') format('svg');
font-weight: normal;
font-style: normal;
}
再一次,路径是正确的(正如字体在大约 80% 的时间内正确渲染的事实所证明的那样)。
可能会发生什么?