Questo accade perchè il footer ha posizionamento assoluto. Il posizionamento assoluto indica di posizionare il BOX esattamente al "bottom" del container.
Togli il posizionamento assoluto e imposta un "clear : both":
codice:#footer{ margin: 0 auto; width: 760px; background: #41545F; text-align: center; clear : both; bottom:0; color: #fff; border-top: 1px; border-bottom: 1px; font-family: helvetica, arial, verdana, tahoma, sans-serif; padding: 0; }