Ich bin über ein recht einfaches CSS-Problem gestolpert, das mich an meinem Verständnis von CSS stark zweifeln ließ, bis ich dann auf die naheliegende Idee kam, es in allen gängigen Browsern zu testen. Hier das Beispiel:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title></title>
</head>
<style>
#a{width:240px;background-color: green;}
#al{width:50%;background-color:#ccc;float:left;}
#ar{width:100px;float:left;background-color:#eee}
</style>
<body>
<div id="a">
<div id="al">irgendein Text im linken Bereich
</div>
<div id="ar">irgendein anderer Text, der im rechten Bereich platziert wird. Wenn die Bereiche gefloatet werden, schrumpft offenbar der a-container auf die Höhe 0
</div>
</div>
</body>
</html>
Ich hatte erwartet, dass der linke und der rechte Bereich auf einen grünen Hintergrund liegen, jedoch war der FF dazu nicht zu bewegen - der a-div hatte die Höhe 0 -, nur wenn ich das Floaten abschaltete hatte der a-Container wieder die erforderliche Höhe. Alternativ dazu konnte man den Hintergrund wieder hervorkitzeln, wenn man a die Eigenschaft overflow:hidden gab, was ich nun gar nicht mehr verstand.
Dies wollte ich eigentlich so als Problem ins Forum stellen, dann stellte ich fest, dass der IE und der Opera sich tatsächlich so verhalten, wie ich es erwartete, während Chrome und Safari in gleicher Weise wie der FF zicken.
Was ist nun eigentlich standardkonform und warum kann man mit overflow:hidden das erwartete Verhalten erzwingen?
Freue mich auf Eure Analysen und Aufklärung
csscook

