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