CSS-Methode IE6 hacks
- CSS @import, richtig?
- IE6 versteht
*html selector
hack, Recht?
Ist es möglich, Sie zu kombinieren, wie
//*html @import url(ie6hacks.css);
vielleicht
//*html { @import url(ie6hacks.css); }
?
Gute Browser muss überspringen Sie diesen Schritt, wird es immer noch " work in IE6? Wie sieht es denn da eine Lösung? Ich kann deutlich sehen, es sieht hässlich wie die normale CSS.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht. at-Regeln, wie zum Beispiel @import sind keine Selektoren, so kann nicht kombiniert werden mit anderen Selektoren.
Gibt es Möglichkeiten, um an-Regeln-arbeiten als hacks, zum Beispiel diese:
geladen werden, IE6/7 aber nicht den anderen Browsern. Allerdings würde ich nicht empfehlen es zu benutzen; diese Art der Sache kann wirklich zerbrechlich. In diesem bestimmten Beispiel ist auch ungültige CSS.
Als Daniel sagt, wenn Sie möchten, zu trennen .css-Dateien für hacks, der beste Ansatz ist eine bedingt-im link-tag. Die Schönheit von "* html" ist, dass man sich hack-Regeln in der gleichen stylesheet, welches ist einfacher zu verwalten, wenn es nur wenige von Ihnen; wenn Sie mit einer separaten style-sheet-eh, es bietet keinen Vorteil.
IMO "* html" für IE6 ist der einzige hacken, es ist immer noch legitim, zu verwenden heute. Alle box-Modell-stuff ist tot zusammen mit IE5 — vorausgesetzt, Sie sind nicht mit IE6 im Quirks Modus, das sollte man nicht — und den anderen Browsern, sogar IE7, sind in der Regel zu gut, um in der Lage sein, anzugreifen, mit einem einfachen hack; die wenigen hacks, die Gegner sind zu Komplex/fragil/ungültige wirklich zu verwenden.
(Und als Erfinder der Vereinfachte Box-Modell-Hack, ich sage ein herzhaftes good riddance zu Ihnen.)
Warum die Mühe mit diesem abgedrehten hack, wenn Sie könnten, verwenden Sie bedingte Kommentare, um nur die CSS, die Sie benötigen?
Einige Ressourcen:
Wenn Sie wirklich müssen die Verwendung von @import, können Sie die Vorteile der Tatsache, dass der IE sich nicht an Spezifikationen für die @import-Regel. Normal muss es werden, das erste denken in einer stylesheet-oder style-tag, oder es komplett ignoriert. Aber der IE6 (zumindest als ich es getestet) scheint das nicht zu kümmern. Entlang dieser Linien, Sie können dies tun:
Beachten Sie, dass ich noch nicht getestet, in nichts außer FF3 (wo es nicht laden ie-style.css) und IE6 (wo lädt er das sowieso). Ihre Laufleistung kann variieren.
Leider die
*html
hack kann verwendet werden, zu importieren anderer stylesheets.Hier ist ein Artikel zu erklären, dass hack und andere, die nützlich sind für den Angriff auf IE-spezifische Fehler.