bootstrap 3.2.0 les glyphes ne s'affichent pas dans internet explorer
j'utilise Twitter bootstrap 3.2.0 et j'utilise quelques glyphicons qui fonctionnent correctement en ff, chrome et opera, mais ils ne sont pas affichés dans Internet Explorer.
la chose étrange est, si j'ouvre le getbootstrap.com site web et regarder la section "Composants", même là, ils ne sont pas affichés correctement, donc je doute de tous les problèmes de mise en œuvre de mon côté.
est ce que quelqu'un d'autre a un problème similaire?? Ou est de savoir quelque chose au sujet de ce comportement?
voici un Scrennshot de comment il regarde dans mon Internet Explorer 11
7 réponses
Ok, j'ai résolu le problème moi-même.
le problème était que, d'une certaine façon, mon IE était dans un certain état de sécurité, dans lequel le téléchargement de police était désactivé.
donc j'ai changé le niveau personnalisé du "mode protégé" - vous pouvez le trouver dans l'onglet Sécurité du Menu Options Internet.
après avoir cliqué sur le " niveau personnalisé..."Bouton vous devez rechercher" téléchargement de police "et le changer en"activer".
merci de votre aide quiconque!
pour ceux d'entre vous qui pourraient être confrontés à un problème similaire, il y a un bug dans Internet Explorer qui fait que les sites web ne rendent pas sous certaines situations de contrôle de cache.
si le serveur envoie l'en-tête Pragma: no-cache et/ou Cache-Control no-store, cela causera IE de ne pas rendre les glyphes.
cela m'a pris des heures à trouver, donc j'espère que l'affichage ici aidera les autres à gagner du temps!
C'est trop tard pour répondre , mais j'ai récemment été confronté problème Angulaire 4 + graal comme backend. Pour moi, toutes les ressources dans le dossier webapp dans grails était de définir le
Cache-control : 'no-store'.
et il n'y a pas d'en-tête comme modified-since , ou à l'expiration de etc. C'était à l'origine du problème. J'ai mis à jour l'application.yml comme ci-dessous pour résoudre ce problème , et il a travaillé pour moi.
grails:
resources:
cachePeriod: 10
et ce sera mis en en-tête de réponse comme ci-dessous
Cache-Control : max-age=10
Pour résoudre un nginx installation que j'ai ajouté ceci à notre fichier de configuration
# Favicon and fonts
location ~* \.(ico|woff|ttf|svg|eot|otf)$ {
expires 1w;
access_log off;
add_header Cache-Control "public";
}
pour résoudre sur une installation wildfly vous devez changer votre standalone.fichier xml à la untertow section:
<server name="default-server">
<host name="default-host" alias="localhost">
...
<filter-ref name="custom-max-age" predicate="path-suffix['.woff'] or path-suffix ['.woff2'] or path-suffix ['.ttf'] or path-suffix ['.svg'] or path-suffix ['.eot'] or path-suffix ['.otf']"/>
</host>
</server>
<filters>
<response-header name="custom-max-age" header-name="Cache-Control" header-value="public"/>
</filters>
le problème est que, le navigateur (IE 11) a besoin de recive:
- les fichiers de contenu statiques doivent avoir le contrôle de Cache et Pragma avec "public, max-age=600"
- les requêtes angulaires doivent avoir le contrôle de Cache et Pragma avec "no-cache"
Dans mon application (.net de base + angulaire)
app.js
var cacheConfig = function ($httpProvider) {
$httpProvider.defaults.headers.common["Cache-Control"] = "no-cache";
$httpProvider.defaults.cache = false;
if (!$httpProvider.defaults.headers.get) {
$httpProvider.defaults.headers.get = {};
}
$httpProvider.defaults.headers.get["If-Modified-Since"] = "0";
};
Démarrage.cs
app.UseStaticFiles(new StaticFileOptions
{
OnPrepareResponse = ctx =>
{
ctx.Context.Response.Headers.Append("Cache-Control", "public,max-age=600");
ctx.Context.Response.Headers.Append("Pragma", "public,max-age=600");
//ctx.Context.Response.Headers.Append("ETag", DateTime.Now.Ticks.ToString());
}
});
dans notre cas, nos images Windows 10 d'entreprise ont un paramètre pour bloquer les polices non fiables qui n'affectent que IE11. Chrome / FF / Edge affiche toutes les polices correctement. L'accès à notre site sur ma machine personnelle (pas ma machine d'entreprise) dans IE11 a montré les polices parfaitement amende.
Voir cet article pour plus de détails: