Tanto al #header como al #wrapper debes agregarles la clase clear. Luego agregá esto a tu css:
Código CSS:
Ver original.clear{zoom:1}
.clear:after{
content:'.';
display:block;
clear:both;
height:0;
line-height:0;
visibility:hidden;
}
Tenés que "limpiar" los flotados. La clase clear se la agregarás a todo elemento que contenga elementos flotados en su interior.
Podés leer
acá algunos otros consejos y experiecias personales con el flotado. Tu problema está en el punto
2