it-swarm.com.de

das Schriftarten-Symbol wird nicht angezeigt IE 11, aber in anderen Browsern angezeigt

Ich bin ein Neuling in der Schriftart-tolle Icons. Ich habe eine Seite, auf der ein Filter vorhanden ist, in dem der Benutzer die Daten durchsuchen kann. Ich habe kurz vor dem Suchlink das Symbol "Font awesome" hinzugefügt (siehe untenstehender Screenshot). Ich kann dieses Symbol in allen Browsern außer IE 11 sehen siehe in IE 11, aber ich kann dieses Symbol nicht nur auf dieser Seite sehen (siehe Screenshot).

Hier ist der Screenshot von IE 11:

 enter image description here

Hier ist der Screenshot von Chrome:

 enter image description here

Kann mir jemand dabei helfen?

15
Rohit Gaikwad

Ich hatte das gleiche Problem und löste es, indem ich dieses Metatag als FIRST -Tag in <head> hinzufügte:
<meta http-equiv="X-UA-Compatible" content="IE=Edge">

Überprüfen Sie außerdem gemäß der offiziellen Dokumentation Folgendes:

Für Internet Explorer: Sie liefern keine Dateien mit der Option no-store im Cache-Control-Header (Ref: # 6454);
Für Internet Explorer und HTTPS: Sie liefern keine Dateien mit der Option no-cache im Pragma-Header.

18

IE hat ein Problem mit @font-faces, das mit dem HTTP-Header Pragma=no-cache ausgeliefert wird. Sie können es auf dem Issue-Tracker aufgezeichnet sehen hier

Leider ist das Problem als nicht lösbar markiert, es gibt jedoch einige Problemumgehungen. Der, der für mich funktioniert hat, war der Einsatz eines Servlet-Filters, der das Setzen des Pragma-Headers verhindert.

Andere Lösungen, die für mich nicht funktionierten:

Font-awesome verschwindet nach der Aktualisierung für alle ie Browser ie11, ie10, ie9

Awesome Icons werden nach dem Aktualisieren in IE unsichtbar

9
Josema

Wenn Sie Spring MVC mit Spring Security verwenden, fügt Spring Security automatisch keine Cache-Header hinzu und führt dazu, dass font-awesome auf IE11 bricht. 

( https://docs.spring.io/spring-security/site/docs/current/reference/html/headers.html#headers-cache-control )

Ich habe das Problem gelöst, indem ich eine ResourceHandler in meine WebMvcConfiguration für font-awesome eingefügt habe, die so konfiguriert ist, dass der Browser die Schriftarten zwischenspeichern kann.

public class WebMvcConfiguration extends WebMvcConfigurerAdapter
{
    @Override
    public void addResourceHandlers( ResourceHandlerRegistry registry )
    {
        registry.addResourceHandler("/assets/vendor/font-awesome/fonts/**")
            .addResourceLocations("/assets/vendor/font-awesome/fonts/")
            .setCachePeriod(31556926);        
    }
}
3
Piers Geyman

Versuchen Sie von der IE Konsole aus, das folgende Skript auszuführen

$('head').append('<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.5.0/css/font-awesome.min.css" type="text/css" />');

Wenn es funktioniert, versuchen Sie es zu importieren, anstatt es lokal zu speichern.

3
Swapnil Dalvi

Wenn der Apache-Server Schriftdateien bereitstellt, fügen Sie der httpd.conf oder .htaccess in die folgenden Einträge hinzu.

Um rechte MIME-Typen für Schriftdateien festzulegen, fügen Sie diese Zeile in config ein:

 AddType application/vnd.ms-fontobject .eot
 AddType font/truetype .ttf
 AddType font/opentype .otf
 AddType font/opentype .woff
 AddType image/svg+xml .svg .svgz

Zum Aktualisieren der Kopfzeilen von Schriftdateien funktionierte dieser Fix hervorragend zum Rendern von Schriftsymbolen in IE - Browsern.

<LocationMatch "\.(eot|otf|woff|ttf)$">
   Header unset Cache-Control
   Header unset no-store
</LocationMatch >
2
sri_bb

Ich hatte das gleiche Problem mit der Schrift fantastisch. Ich habe in meiner .net-Anwendung ein benutzerdefiniertes httpmodule hinzugefügt. 

public class MyHttpModule : IHttpModule
    {
        public void Dispose()
        {
        }
        public void Init(HttpApplication context)
        {
            context.EndRequest += new EventHandler(Context_EndRequest);
        }
        protected void Context_EndRequest(object sender, EventArgs e)
        {
            HttpResponse response = HttpContext.Current.Response;
            if (string.Compare(HttpContext.Current.Request.Browser.Browser, "InternetExplorer", StringComparison.InvariantCultureIgnoreCase) == 0)
            {
                response.Headers.Set("Pragma", "none");
            }
        }
    }

Und das Modul in web.config registriert.

<system.webserver>
    <modules>
          <add type="MyHttpModule, Culture=neutral" name="MyHttpModule"/>
    </modules>
</system.webserver>

Es hat das Problem gelöst.

1
nks

Wir hatten vor kurzem dieses Problem mit Font Awesome-Schriftdateien aus unserer Rails) -Anwendung. Die Verwirrung war, dass wir keine Pragma - oder Cache-control - Antwortheader übergeben haben - also Die vorherigen Antworten in diesem Beitrag waren etwas verwirrend.

Zusammenfassend lässt sich sagen, dass dieses Problem durch die folgenden beiden Bedingungen verursacht wird:

  1. Die Anforderung wird von font-face Über eine HTTPS-Verbindung initiiert (entscheidend für die lokale Reproduktion dieses Fehlers).
  2. Der Pragma -Header hat den Wert no-cache OR in unserem Fall wird alles gzippt und der Vary -Header wird mit übergeben Ein anderer Wert als Accept-Encoding.

Wir haben dies behoben, indem wir unserer Rack :: CORS-Konfiguration Folgendes hinzugefügt haben:

config.middleware.insert_before 0, Rack::Cors do
      allow do
        origins '*'

        # Setting Vary to Accept-Encoding required or IE11 fonts will not load from local cache
        resource('*.eot',
                 headers: :any,
                 credentials: false,
                 methods: [:get],
                 vary: ['Accept-Encoding'])
      end
    end
1
Alex H Hadik

Ich war mit demselben Problem konfrontiert und habe den folgenden Link in den Tag eingefügt und es hat funktioniert.

<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">

Hoffe das hilft!

1
user1853243

Dies hat meine Font-Icons in IIS behoben: Fügen Sie Ihrem Font-Verzeichnis eine web.config mit folgendem Inhalt hinzu: 

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <httpProtocol>
            <customHeaders>
                <add name="Pragma" value="none" /> 
            </customHeaders>
        </httpProtocol>
    </system.webServer>
</configuration>
1
ChrisGheen

Ich hatte das gleiche Problem mit Font Awesome 4.7 und IE 11. Ich habe es behoben, indem ich die folgenden Meta-Informationen im Abschnitt <head> hinzugefügt habe:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
0
Cuder

In meinem Fall war die .eot-Schriftartdatei beschädigt. Ich hatte eine neue generiert (+ neue .css-Stile) und das Problem wurde behoben. Versuch es. 

0

Alternativ können Ihre Internet Explorer-Einstellungen dazu führen, dass der Browser keine Schriftarten lädt. Dies war auf einem unserer streng gesicherten Server der Fall.

Versuchen Sie diese Schritte:

  1. Öffnen Sie den Internet Explorer
  2. Wechseln Sie zu Internetoptionen
  3. Klicken Sie auf der Registerkarte Sicherheit auf Stufe anpassen ...
  4. Scrollen Sie nach unten zu Downloads und stellen Sie sicher, dass der Font-Download aktiviert ist

 enter image description here

0
E2rdo

Ich bin auf dasselbe Problem gestoßen, habe überall gesucht und kein Glück. Es scheint, dass dies auf das kumulative Sicherheitsupdate von Microsoft zurückzuführen ist, das das Laden von Schriftarten/Bildern insbesondere eingestellt hat:

https://support.Microsoft.com/de-de/help/4486474/cumulative-security-update-for-internet-Explorer-february-12-2019

https://support.Microsoft.com/de-de/help/4491113/cumulative-update-for-internet-Explorer-february-19-2019

Um das Problem zu beheben, müssen Sie den March-Patch installieren:

https://support.Microsoft.com/de-de/help/4489873/cumulative-security-update-for-internet-Explorer-march-12-2019

0
SH30