CSS @font-face 規則允許您向網站添加自訂字體。然而,在這種情況下,該規則在 Chrome 和 Internet Explorer 中完美運行,但在 Firefox 中卻不起作用。
Firefox 強制執行嚴格的「檔案 uri 來源」(檔案:/ //) 預設策略。如果您使用 file:/// 協定在本機上運行您的網站,Firefox 將不允許跨網域字體存取。
要解決此問題,請使用 http:// 協定載入您的網站或停用以下 Firefox偏好設定:
security.fileuri.strict_origin_policy
如果您是部署網站後遇到此問題,可能是您的瀏覽器將相對字體路徑解釋為跨域請求。為了防止這種情況,請將以下標頭添加到您的.htaccess 文件中:
<FilesMatch "\.(ttf|otf|eot)$"> <IfModule mod_headers.c> Header set Access-Control-Allow-Origin "*" </IfModule> </FilesMatch>
這指示伺服器隨每個字體檔案請求發送附加標頭,從而允許從任何網域進行訪問。
如果上述步驟無法解決問題,請考慮對您的字體使用 Base64 編碼。雖然這不是理想的解決方案,但它可能是最後的手段。
以上是為什麼我的 @font-face 在 Firefox 中不起作用,但在 Chrome 和 IE 中起作用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!