WENN IE Bedingungen nicht arbeiten
Ich hätte fahren mich Nüsse, die versuchen zu bekommen, Kommentar-Bedingungen zu arbeiten, und ich bin nicht mit viel Glück kann sich das jemand erklären was ich falsch mache?
Hier ist mein code:
<!--[if IE 10]>
IE IS VERSION 10<br />
<![endif]-->
<!--[if !IE]><!-->
Browser is not IE
<!--<![endif]-->
<!--[if lt IE 9]>
IE IS LESS THAN VERSION 9<br />
<![endif]-->
Was passiert ist, ist schrecklich inconsistant. Wenn ich das laden der Seite mit dem obigen code in IE8 es kommt die Meldung "IE KLEINER ALS VERSION 9" wunderbar, nicht wahr? Denn wenn ich das laden der GLEICHEN SEITE in IE10 bekomme ich die Meldung "Browser ist nicht IE"
Warum denkt es, dass IE10 ist nicht IE-browser?! Ich habe das Crawlen der Seite nach der Seite, aber es scheint nicht zu sein, irgend etwas falsch bei meinem code von dem, was ich gefunden habe.
[if IE 10]
funktioniert nicht. Nur N < 10 unterstützt conditional comments, damit [if !IE]
ist nutzlos. Wie Sie sehen können auf deinem geposteten code, es gibt einen "syntax error" in die !IE
Zustand, daher der text Browser is not IE
sollte eigentlich gezeigt, in jedem browser...Ich hasse Internet Explorer
InformationsquelleAutor TheSnooker | 2013-10-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
CSS-Lösung:
Wenn Sie sich bewerben möchten nur CSS auf browser-Basis, dann können Sie versuchen:
JavaScript-Lösung:
IE 10 nicht unterstützt bedingte Anweisungen.
Bedingte Anweisungen in Internet Explorer 10.. Es wird die Behandlung von conditional comments als normale HTML-Kommentare, und ignoriert völlig.
Verwenden Sie ein feature-Erkennung Bibliothek wie Modernizr statt der browser-Erkennung.
eine Lösung gefunden, die auf impressivewebs in diesem Kommentar:
Hier ist die Demo zu testen
Die Lösung ist:
Es
InformationsquelleAutor Zaheer Ahmed
Ich bin überrascht, dass niemand hat Hinzugefügt, dass in einem css-only Lösung. Wenn Sie nur wollen, verwenden Sie css, verwenden Sie dann eine Aussage wie diese:
Diese Weise müssen Sie nicht zu setzen auf jquery, oder ein beliebiges html-markup. Einfach per post an die css-und Sie sind gut zu gehen.
Nun, ist es ein hack? Wahrscheinlich. Dies hängt mit der microsoft high-contrast-tag, da aber kein anderer browser verwendet die ms-tag, dann sollten Sie gut zu gehen.
Schließlich, überprüfen Sie diese Seiten für weitere Informationen:
Blog-Post
MS-Website, auf der Kontrast-tag
Dies hat mich gerettet, so viel Zeit mit dem Versuch zu hacken um IE 11 idiotische Umsetzung des Flexbox — DANKE.
InformationsquelleAutor Maximus
IE 10 gelöscht conditional comments.
Können Sie etwas tun, ähnlich wie in javascript so:
Gut, wenn Bedingungen wurden fallen gelassen, IE10, Sie haben nicht allzu viele Optionen, tun Sie?
Leider wurde diese Funktion entfernt in jQuery 1.9.
jQuery
ist nicht ein synonym fürjavascript
.InformationsquelleAutor sclarson
DH 10, 11 und nach oben nicht mehr unterstützt conditional comments.
Siehe diese Antwort: https://stackoverflow.com/a/22187600/1498739
InformationsquelleAutor abiNerd
Versuchen, fügen Sie folgenden meta-tag in der Nähe der oben auf der Seite auf " opt-in Internet Explorer 9 Verhalten:
Dies ist, weil conditional comments entfernt wurde in Internet Explorer 10 standards und quirks-Modi für eine verbesserte Interoperabilität und die Einhaltung von HTML5. Dies bedeutet, dass die Conditional Comments werden jetzt behandelt, als reguläre Kommentare, genau wie in anderen Browsern. Diese änderung kann Auswirkungen auf Seiten, exklusiv geschrieben für Windows Internet Explorer oder Seiten, die browser-sniffing, deren Verhalten zu ändern in Internet Explorer.
InformationsquelleAutor Ian