Когда два элемента (ов) плавают в контейнере, который не имеет фиксированную высоту (или его высота меньше максимальной высоты содержимого элемента (ов)), ваш контейнер сворачивается в пиксельную линию и ваш плавающий элемент (s) переполнить контейнер.
Чтобы контейнер содержал два элемента div, вам необходимо очистить оба float перед закрытием контейнера!
Другими словами ....
CSS
<style>
#wrapper{
width: 600px;
background: gray;
}
#left{
float: left;
width: 150px;
height: 80px;
background: red;
}
#right{
float: left;
width: 450px;
height: 150px;
background: yellow;
}
.clearer{ clear: both;}
</style>
HTML
<div id="wrapper">
<div id="left"></div>
<div id="right"></div>
<div class="clearer"></div>
</div>