- aktualisiert:
- 21.01.2012
- erstellt:
- 07.02.2007
IE und hasLayout
Der Internet Explorer <= 7 hat eine eigene Pseudo-Eigenschaft »hasLayout«. Diese Eigenschaft kann nicht separat zugewiesen werden, sondern wird durch bestimmte CSS-Eigenschaften bedingt; so hat ein Element z.B. »Layout«, sobald width
oder height
einen Wert ungleich auto
aufweisen.
Ausführlicher Artikel zum »hasLayout«-Phänomen: On having Layout (englisch) – Über hasLayout (deutsche Übersetzung).
»HasLayout« ruft manche Fehler des IE/Win erst hervor, häufiger noch können Fehler durch Hinzugabe von »Layout« beseitigt werden. Eine Möglichkeit, um Elementen »Layout« zu geben ist der sog. Holly Hack:
/* Layout for IE Win \*/
* html #box {
height:1%;
}
/* */
Der Holly-Hack ist für IE-Versionen bis einschließlich Version 6 geeignet, da diese Versionen die height
-Eigenschaft fehlerhaft interpretieren (wie min-height
) und Elemente trotz height
-Angabe mit dem Inhalt erweitern. Der IE7 interpretiert height
korrekt und darf diese Angabe daher nicht sehen. Er bekommt ersatzweise z.B. min-height:0;
(→CSS-Hack für IE7), was nebenwirkungsfrei in anderen Browsern ist und daher auch ohne Hack eingesetzt werden kann.