Hi,
Ich find den * html Selektor praktischer, weil der keinen Eingriff ins HTML-Dokument erfordert.
Mir ist das Konzept von solchen Hacks, auch zB. body> nie so richtig klar geworden, koenntest Du bitte auf einen passenden Artikel verweisen?
Nö, kann ich nicht, weil ich keine weiß.
Das Konzept ist:
Finde einen Selektor (oder eine Syntax), den nur die gewünschten Browser interpretieren.
Beispiel:
* html div { /* was auch immer */ }
Das selektiert theoretisch alle div-Elemente beliebig tief verschachtelt in einem html-Element beliebig tief verschachtelt in einem beliebigen Element.
Geckos und Operas interpretieren diesen Selektor korrekt - es gibt kein solches div, da das html-Element nicht in einem beliebigen Element verschachtelt ist. Also wird kein div damit formatiert.
Der IE hat aber den Fehler, * html falsch zu verstehen und damit auch das toplevel-html-Element auszuwählen ==> obiges Beispiel formatiert sämtliche divs.
Syntaktisch ist der Selektor absolut korrekt - aber er ist im Zusammenhang mit HTML-Dokumenten eigentlich sinnlos.
Damit erreicht man also eine Formatierung nur im IE.
html>body div { /* was auch immer */ } funktioniert in Geckos/Opera usw, weil diese den Kind-Selektor kennen. IE ist zu blöd dafür, der kennt den Kind-Selektor nicht und ignoriert die Formatierungen. Damit erreicht man also eine Formatierung in modernen Browsern.
cu,
Andreas
Warum nennt sich Andreas hier MudGuard?
Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.