Вам нужно очистить div. Вы можете использовать clear: both
для элемента ниже, но я часто нахожу, что это проще:
<div style="background-color:green; overflow: hidden;">
<div style="float:left;">something</div>
<div style="float:right;">something else</div>
<div>
Обратите внимание на переполнение : скрыто .
Конечно, это работает только тогда, когда вам не нужно, чтобы элементы оставляли свои содержащие элементы.