Chrome 中 @font-face 的 MIME 类型不正确
尝试在 Chrome 中使用 @font-face 声明实现自定义字体时,开发人员可能会遇到一条错误消息,指示“资源解释为字体,但使用 MIME 类型应用程序/八位字节流传输”。此问题源于字体文件的 MIME 类型与声明中指定的预期类型不匹配。
要解决此差异,可以采用全面的 @font-face 声明来满足不同浏览器的要求。以下跨浏览器声明可确保与 Chrome 和 Firefox 的兼容性:
<code class="css">@font-face { font-family: 'Font Name'; src: url('FontName.eot'); src: local('☺'), url('FontName.woff') format('woff'), url('FontName.ttf') format('truetype'); }</code>
.eot 文件指定用于 Internet Explorer,而其他浏览器则使用 .woff 或 .ttf 格式。要从源字体生成这些不同的格式,请考虑利用 Font Squirrel 的字体生成器。
此外,应配置 .htaccess 文件以指定字体文件的相关 MIME 类型:
<code class="htaccess">AddType application/vnd.ms-fontobject .eot AddType font/ttf .ttf AddType font/otf .otf AddType application/x-font-woff .woff</code>
通过遵循这些建议,您可以确保您的自定义字体在各种浏览器(包括 Chrome)上正确显示。
以上是为什么我在 Chrome 中使用 @font-face 时收到'资源解释为字体但使用 MIME 类型 application/octet-stream 传输”?的详细内容。更多信息请关注PHP中文网其他相关文章!