to Defnur

Во-первых, если уж приводим пример кода, не забываем про то, что в CSS необходимо указывать единицы измерения. В Вашем случае – px.

Во-вторых, мы наблюдаем здесь ожидаемое поведение блочной модели.

Контейнер, в котором располагается элемент с float, перестает этот элемент с float "замечать". В связи с этим, если он будет заканчиваться раньше элемента с float по высоте, элемент с float будет проваливаться через низ этого контейнера. Результатом такого феномена при раскладке элементов на странице является тот факт, что если какой-либо контейнер содержит в себе только лишь элементы с float, его высота схлопывается в нуль.

Лекарство:
Назначаем контейнеру (родительскому блоку) свойство overflow: hidden; и радуемся...

Поправка:
Решение с overflow: hidden не работает в IE. Чтобы Осел вел себя как надо, для контейнера должна быть явно задана ширина или высота (например, width: 100%)...