Internet Explorer 使用者可能會遇到使用@font-face 連線規則透過HTTPS 連線載入EOT 字體的問題。雖然字體可能透過 HTTP 成功加載,但切換到 HTTPS 可能會導致失敗。
調查:
問題源自於 IE 對 HTTPS 請求的處理。當透過 HTTPS 載入字型並且伺服器傳送 Cache-Control: no-cache 標頭時,IE 會忽略下載的字型。這與 KB 815313 中所述的 IE 行為有關,該行為會阻止快取透過 SSL 下載的活動文件。
解決方案:
要解決此問題,請確保伺服器代管字型不會傳送 Cache-Control: no-cache 標頭。刪除或修改此標頭將允許 IE 識別下載的字型。
範例:
@font-face { font-family: 'GothamCondensedBold'; src:url('path/to/fontgothmbcd-webfont.eot'); src:url('path/to/fontgothmbcd-webfont.eot?#iefix') format('embedded-opentype'), url('path/to/fontgothmbcd-webfont.woff') format('woff'), url('path/to/fontgothmbcd-webfont.ttf') format('truetype'), url('path/to/fontgothmbcd-webfont.svg#GothamCondensedBold') format('svg'); font-weight: normal; font-style: normal; }
透過確保伺服器不會傳送 Cache-Control:無快取標頭,IE 會透過 HTTPS 正確載入 EOT 字型。
以上是為什麼 IE 無法透過 HTTPS 載入 EOT 字型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!