遇到 CSS 中定义的 @font-face 规则不起作用的问题时在 Firefox 中,但在 Chrome 和 IE 中,必须考虑可能影响字体渲染的各种因素。以下是两个可供探索的潜在解决方案:
默认情况下,Firefox 在访问本地文件 (file:///) 时强制执行严格的安全策略。要使其行为与其他浏览器保持一致,请修改“about:config”中的以下首选项:
将此值设置为 false 允许 Firefox 跨不同目录级别加载本地字体资源。
如果问题在已发布的网站上仍然存在,请检查字体访问问题是否与跨域问题有关,即使使用相对路径也是如此。考虑将以下标头添加到相关文件类型(.ttf、.otf、.eot)的 .htaccess 文件中:
<FilesMatch "\.(ttf|otf|eot)$"> <IfModule mod_headers.c> Header set Access-Control-Allow-Origin "*" </IfModule> </FilesMatch>
虽然此修改不太可能解决问题,但这是一个快速故障排除步骤。或者,考虑使用 base64 编码来嵌入字体,这可能适用于这种情况。
有关进一步指导,请参阅以下资源:[CSS @font-face:本地文件未在 Firefox 中加载]( https://stackoverflow.com/questions/16392453/css-font-face-local-files-not-loading-in-firefox)。
以上是为什么我的 CSS @font-face 规则在 Firefox 中不起作用,但在 Chrome 和 IE 中却有效?的详细内容。更多信息请关注PHP中文网其他相关文章!