Hi,
Woher bekommt den das <div class="foo"> seine Höhe?
Von .bar.
.bar ist 0 pixel hoch + 100% padding-top. Die 100% beziehen sich auf die _breite_ des Elternelements (.foo).
Wirkt wie ein Bug, ist aber AFAIK so spezifiziert.
Falls das zusätzliche Element stört kann man stattdessen übrigens auch ein pseudo-element verwenden.
~dave