Sind CSS3 ::before und ::after pseudo-Elemente, die von IE9 unterstützt oder nicht?
Auf diese MS Kompatibilitäts-Tabelle es sagt, IE9 unterstützt nicht die pseudo-Elemente ::before
und ::after
, aber wenn ich versuche, es scheint, dass es funktioniert... siehe JSBin
Mache ich etwas falsch? Ich dachte ::before
und ::after
wäre schön-tools zu verstecken Sachen von IE9, wenn in der Tat, Sie nicht.
caniuse.com/#feat=css-sel2 Überprüfen Sie "Bekannte Probleme" Registerkarte unterhalb des Diagramms.
Es sagt nichts über den IE9.
my bad, sorry. caniuse.com/#search=%3Aafter
Nichts über IE9 dort entweder...
Blick auf die IE-Spalte und sehen Sie die Versionsnummern. Ist poste ich einen screenshot?
Es sagt nichts über den IE9.
my bad, sorry. caniuse.com/#search=%3Aafter
Nichts über IE9 dort entweder...
Blick auf die IE-Spalte und sehen Sie die Versionsnummern. Ist poste ich einen screenshot?
InformationsquelleAutor frequent | 2011-08-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
In der CSS2-pseudo-Elemente
:before
und:after
mit dem traditionellen Einzel-Doppelpunkt-notation, unterstützt durch IE8 und höher. Sie sind nicht neu in CSS3.Den Doppel-Doppelpunkt-Schreibweise, auf der anderen Seite, ist neu in CSS3. IE9 hat unterstützen diese neue notation für
::vor dem
und::after
, und ebenso für die CSS1-pseudo-Elemente: first-line
und: first-letter
. Geht nach vorn, jedoch keine neuen pseudo-element kann den einzigen Doppelpunkt-syntax und-Browser (einschließlich IE) erwartet Unterstützung der Doppel-Doppelpunkt-syntax für alle pseudo-Elemente.Ich habe keine Ahnung, warum, die Tabelle sagt, dass IE9 nicht unterstützt, die neuen pseudo-element-syntax, weil es sicherlich nicht entsprechend der Dokumentation für die einzelnen Selektoren oben verlinkten, und Ihre test-Fall. Sowie, natürlich, diese Antwort.
nichts geht über Microsofts eigene Kompatibilitäts-charts... Danke!
und danke für den link!
Es gibt einen Unterschied zwischen CSS2.1 und CSS3 und der Doppelpunkt und Doppel-Doppelpunkt. Der Doppel-Doppelpunkt ist verwendet in CSS3 für pseudo-Elemente, während die einzigen Doppelpunkt wird nur für die pseudo-Selektoren. In CSS2.1, die einzigen Doppelpunkt vertreten beide.
den einzigen Doppelpunkt wird nur verwendet für die pseudo-Klassen." Doppel-Doppelpunkte und einzigen Doppelpunkte eingeführt wurden genau, weil Menschen wurden munging beiden pseudo-Elemente und pseudo-Klassen zusammen in einen verwirrenden Begriff als "pseudo-Selektoren", während die einzigen Doppelpunkt verwendet wurde, die zu vertreten Sie beide.
InformationsquelleAutor BoltClock
IE 9 unterstützt die Notationen
::after
und::before
(mit zwei Doppelpunkten) in der "standards-Modus". Im "quirks-Modus", ist es nicht. Dies kann getestet werden, z.B. wie folgt:Hier die CSS-Regel wird ignoriert, da der IE 9 geht quirks-Modus. Aber wenn Sie fügen Sie die folgende Zeile ganz am Anfang, IE 9 geht auf den standards-Modus und die CSS-Regel greift:
Ist es üblich, im IE 9, die in quirks-Modus, neue CSS-Funktionen (die meisten Funktionen sind weder in CSS 2.1 oder in den IE-legacy) werden nicht unterstützt. Im quirks-Modus, IE 9 unterstützt nicht die alte-Doppelpunkt-Schreibweise
:after
und:before
. Es unterstützt Sie, (aber nicht die zwei-colon-Versionen) in den "IE-8-Modus", die Sie auswählen können in den Entwicklertools (F12) manuell in die "Dokument-Modus" im Menü, oder auf Dokument-Ebene mit dem tag<meta http-equiv="X-UA-Compatible" content="IE=8">
.:after
und:before
in der alten und der neuen Notationen werden nicht unterstützt, die im quirks-Modus auf einer beliebigen version von IE.Beachten Sie auch, dass der Kompatibilitätsmodus im IE8+ deutlich von dem unterscheiden, quirks-Modus, Kompatibilitätsmodus IE7 emuliert, in der Erwägung, dass quirks-Modus " emuliert IE4/5.
danke, ich stehe korrigiert und bearbeitet meine Antwort entsprechend.
InformationsquelleAutor Jukka K. Korpela
Zitiert aus http://www.w3.org/community/webed/wiki/Advanced_CSS_selectors
InformationsquelleAutor Pav