2012-09-06 11 views
9

Gibt es einen Hack zum Ziel IE9 nur? Ich habe ein Problem nur in IE9, andere Browser funktionieren gut. Ich benutze \9, aber es betrifft auch IE8.Benötigen Hack für ie9 nur

Ich möchte keine bedingten Kommentare verwenden.

+3

Bedingte Kommentare könnten hier dein einziger Freund sein. – Kyle

+0

Es gibt keinen anderen Weg ?? Ich möchte nicht Bedingung Kommentar – supersaiyan

+1

Mögliches Duplikat [Ziel IE9 oder IE8 aber nicht beide mit CSS] [1] [1] verwenden: http://stackoverflow.com/questions/5852681/target-ie9 -oder-ie8-aber-nicht-beide-mit-css –

Antwort

21

können Sie diese :root #element { color:pink \0/IE9; } /* IE9 + IE10pp4 */

+0

Thnx Kumpel.Danke an die – supersaiyan

+3

Das obige Styling wird leider auch in Firefox & Chrome ausgelöst, ich fand hier eine bessere Lösung: http://mynthon.net/howto/-/webdev/CSS-big-list-of-css-hacks.txt – nerdess

5
verwenden

eine andere Art und Weise gibt es!

:root #div { background: #fff \0/IE9; } /* IE9 */ 

Verwenden Sie den :root psuedo Selektor. Dies funktioniert, weil der @media all and (min-width:0) Teil zugunsten dieser Methode in IE9 entfernt wurde.

Beachten Sie jedoch, dass dies keine sichere Methode ist, da es nicht bei allen Selektoren funktioniert. Das beste Ding, das zu verwenden ist, ist bedingte Kommentare, es ist der sicherste, einfachste und beste Weg, um verschiedene Versionen von Internet Explorer zu zielen, außer IE10, das die Unterstützung für bedingte Kommentare weggelassen hat.

+0

Es zielt auch auf IE10. – user712092

13

Ich kam mit einer Media-Abfrage, die dies auch tut. Es gibt nur IE9 an.

@media all and (min-width:0\0) and (min-resolution:.001dpcm) 
{ 
    #div { color:red; } 
} 

andere, die ich habe gearbeitet, darunter eine msie 9+ Medienabfrage sind auf meiner Seite Github: https://github.com/jeffclayton/css_hack_testing - die meisten davon habe ich zu browserhacks.com für die Aufnahme geschickt.

2017 UPDATE: es arbeiten zu sehen, habe ich eine Seite Live-Test hier für diese und viele andere, die ich auf http://browserstrangeness.bitbucket.io/css_hacks.html und SPIEGEL gearbeitet: http://browserstrangeness.github.io/css_hacks.html

Bitte beachten Sie ist min-width: 0 \ 0 (Null-Backslash-Zero), wenn Sie den Code auf Ihre eigene Website kopieren. Nicht zu verwechseln mit min-width: 0 (nur eine einzige Null), die nicht funktioniert, um IE9 von anderen Browsern zu unterscheiden.

+0

Das war das einzige, was für mich funktionierte. Es beeinflusste nur den ie9 Browser und erleichterte das einfache Targeting mehrerer Selektoren. Ich konnte es nicht von lesscss kompilieren lassen, aber das ist in Ordnung :) –

+0

Ich bin froh, dass es helfen konnte - und Sie haben Recht, Sie müssen den Hack als verwenden -ist es nicht zu filtern oder zu kompilieren, weil es nicht Standard-Code ist (weshalb es funktioniert). Der Zero-Slash-Zero ist von vielen Browsern oder Compilern nicht erlaubt. –

+0

das ist coolste Hack aller Zeiten! arbeitet mit Hintergrund und hat keine Auswirkungen auf ie10 und höher. Danke! – Iggy

0

In meinem IE9 EMULATOR funktionierte keine der aufgelisteten Lösungen. Der einzige Hack, der uns richtig, um die Größe aktiviert ist, beispielsweise eine Checkbox in IE9 war:

/* IE9 */ 
:root input#my-checkbox { 
    width:20px !important \ ; 
    height:20px !important \ ; 
    box-sizing:content-box !important \ ; 
} 

ich nicht weiß es, wenn dies auch IE8 oder IE10 wirkt usw., aber wir haben Gabe conditionals getrennt sowieso diejenigen.

Hoffentlich hilft das jemand.