Heim >Web-Frontend >CSS-Tutorial >Warum kann IE EOT-Schriftarten nicht über HTTPS laden?
Internet Explorer-Benutzer können beim Laden von EOT-Schriftarten über HTTPS-Verbindungen mit der @font-face-Regel auf Probleme stoßen . Während die Schriftart möglicherweise erfolgreich über HTTP geladen wird, kann der Wechsel zu HTTPS zu einem Fehler führen.
Untersuchung:
Das Problem ergibt sich aus der Verarbeitung von HTTPS-Anfragen durch den IE. Wenn eine Schriftart über HTTPS geladen wird und der Server einen Cache-Control: no-cache-Header sendet, ignoriert IE die heruntergeladene Schriftart. Dies hängt mit dem in KB 815313 beschriebenen Verhalten des IE zusammen, das das Zwischenspeichern von über SSL heruntergeladenen aktiven Dokumenten verhindert.
Lösung:
Um dieses Problem zu beheben, stellen Sie sicher, dass der Server Beim Hosten der Schriftart wird kein Cache-Control: no-cache-Header gesendet. Das Entfernen oder Ändern dieses Headers ermöglicht es dem IE, die heruntergeladene Schriftart zu erkennen.
Beispiel:
@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; }
Indem sichergestellt wird, dass der Server kein Cache-Control sendet: No-Cache-Header, IE lädt die EOT-Schriftart korrekt über HTTPS.
Das obige ist der detaillierte Inhalt vonWarum kann IE EOT-Schriftarten nicht über HTTPS laden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!