Du packst ein <div> deinen Body und dahinter den Footer (noch ein <div>)
HTML-Code:
<div id="content">Body</div>
<div id="footer">Footer</div>
Das formattierst du dann mit CSS:
Code:
#content {
  height: 100%;
  padding-bottom: 100px;
}

#footer{
  height: 100px;
  margin-top: 100px;
  border: 1px solid green;
  background: red;
}
Der Code ist nicht getestet, aber so funktioniert das im Prinzip.
Hier gibt es auch noch Beispiele dafür