使用@font-face跨域字體載入
在嘗試為多個網站建立中央字體儲存庫時,開發人員遇到了一個特殊的問題:@font-face 字體只能在儲存庫所在的子網域上存取。儘管成功連結到其他網站上的 font-face.css,但字體載入失敗。
原因
此行為源自於 Firefox 的安全策略,該策略認為交叉域字體嵌入有害。
解決方案
要克服此限制,請將以下程式碼新增至託管字體的子網域上的頂層 .htaccess 檔案:
<FilesMatch "\.(ttf|ttc|otf|eot|woff)$"> <IfModule mod_headers.c> Header set Access-Control-Allow-Origin "*" </IfModule> </FilesMatch>
存取限制
雖然修改後的.htaccess允許所有網站存取該字體,開發人員表示希望將存取限制為僅授權使用者。但是,Access-Control-Allow-Origin 的 W3C 規格將選項限制為通配符「*」或特定領域。
以上是如何在 Firefox 中使用 @font-face 跨網域載入字體?的詳細內容。更多資訊請關注PHP中文網其他相關文章!