E` sempre il solito problema: hai dimenticato il clear.
Un float non sta dentro il blocco che nel HTML lo contiene: per farcelo stare devi usare un clear.
Vedi ad esempio la pillola sul clearing di fcaldera.