Hallo,
Nun dachte ich mir, daß der Container-Div sich in der Höhe den Kind-Divs anpasst, aber das funktioniert nicht, die Hintergrundfarbe wird gar nicht dargestellt, weil der Container-Div keine Höhe hat.
Nein, du nimmst die <div>s mit float aus den Elementfluss. Um den von dir gewünschten Effekt zu erreichen, gibt es mehrere Möglichkeiten:
1. Nur CSS, läuft aber nicht im IE
#container:after {content:""; display:block; clear:left;}
2. ebenfalls nur CSS, sollte auch im IE laufen, verursucht aber teilweise andere Probleme:
#container {overflow:hidden;}
* html #container {height:1px;}
3. zusätzliches HTML:
füge am Ende des Containers ein clearendes <div> ein:
<div style="clear:left;"></div>
Fall der IE bei dir ohnehin schon richtig rät, würde ich zur 1. Möglichkeit greifen. Ansonsten musst du halt die beiden Anderen mal ausprobieren.
mfg. Daniel