Footer Wont Stay Put

Hi Guys I have a site.

The problem is when I remove some text from the body the footer stretched up the page and doubles the size. Obviously the workaround is to just to keep
Code:
&nbsp
in the body until the footer, is where I want it.

This is not ideal is there anyway to fix the footer. I have put it in CSS and given it a fixed height. but its still not working.

Heres the HTML

Code:
     <div class="body_resize">    <div class="body">      <div class="body_big1">        <h2>Contact Us.<br />        <span>Please get in touch</span></h2>        <p> If you have any questions regsrding any of our services or would like a quote on our work please do not hesitate to contact us. </p>        <table width="100%" border="0">          <tr>            <td class="contactheader">Property Solutions</td>          </tr>          <tr>            <td><span class="contacttext"></span></td>          </tr>          <tr>            <td><span class="contacttext">Poole</span></td>          </tr>          <tr>            <td><span class="contacttext">Dorset</span></td>          </tr>          <tr>            <td><span class="contacttext">BH14 000</span></td>          </tr>          <tr>            <td><span class="contacttext">Tel:- 07971 581 811</span></td>          </tr>          <tr>            <td><span class="contacttext">Email: [email protected]</span></td>          </tr>          <tr>            <td> </td>          </tr>          <tr>            <td> </td>          </tr>        </table>        <p> </p>        <p> </p>        <p> </p>        <p> </p>        <p> </p>        <p> </p>        <p> </p>        <p> </p>      </div>      <div class="body_small1">        <p><img src="images/map.jpg" width="390" height="220" /></p>      </div>    </div>    <div class="clr"></div>  </div>  </div>  <div class="footer">  <div class="footer_resize"><a href="index.html"><img src="images/kudos_logo_lower.png" width="235" height="50" /></a>    <p class="leftt">© Intellectual Property.<br />    <a href="index.html">Home</a>    <div class="clr"></div>  </div>  <div class="clr"></div></div></body></html>
 
Code:
@charset "utf-8";body { margin:0; padding:0; width:100%; background:#f1f1f1; }html { padding:0; margin:0;}a { text-decoration:none;}a:hover { text-decoration:underline;}/* main */.main { padding:0; margin:0 auto;}/********** header **********/.blok_header { margin:5; padding:5; background:#ebebeb url(images/header_bg.gif) top repeat-x;}.header { width:960px; margin:0 auto; padding:0;}/* logo */.logo { padding:0; margin:0; width:226px; float:left;}/* menu */    .menu_resize { width:960px; margin:0 auto; padding:0; background:#1f1f1f;}.menu { padding:5; margin:0; width:850px; float:left;}.menu ul { padding:0; margin:0; list-style:none; border:0; float:left;}.menu ul li { float:left; margin:0; padding:5; border:0;}.menu ul li a { float:left; margin:0; padding:18px 10px; color:#fff; font:bold 12px Arial, Helvetica, sans-serif; text-decoration:none; border:0px solid #000;}.menu ul li a:hover { color:#252525; background:#f1f1f1; border:0px solid #d3d3d3;}.menu ul li a.active { color:#252525; background:#f1f1f1; border:0px solid #d3d3d3;}/* search */.search { padding:55px 20px 0 0; margin:0; width:200px; float:right;}.search form { display:block; float:right; padding:0;}.search span { display:block; float:left; background: url(images/search_bg.gif) left top no-repeat; width:144px; padding:0 5px 0 0; height:33px;}.search form .keywords { line-height:14px; height:17px; float:left; background: url(images/search_bg.gif) left top no-repeat; border:0;  padding:8px 5px; margin:0; font:normal 12px Arial, Helvetica, sans-serif; color:#6c6c6c;}.search form .button { float:left; margin:0; padding:0;}/*header_text_bg*/.header_text_bg { margin:0; padding:0; background:#f1f1f1;}/*header_text*/.header_text { margin:0 auto; padding:20px 0 57px 0; width:960px; background:url(images/screen_t.jpg) bottom no-repeat;}.header_text_blog { height:92px; width:991px; background: url(images/header_text_blog_bg.gif) top no-repeat; padding:0; margin:0;}.header_text_blog h3 { width:300px; float:left; margin:0; padding:30px 0 0 40px; font: normal 36px Arial, Helvetica, sans-serif; color:#fffefe;}.header_text_blog p span { text-align:left; width:340px; float:right; margin:0; padding:30px 0 0 0; font: normal 12px Arial, Helvetica, sans-serif; color:#fffefe;}/*top_text*/.top_text { background:#f5f5f5; border:1px solid #ddd; width:958px; margin:0 auto 20px auto; padding:0;}.top_text p { font: normal 12px Arial, Helvetica, sans-serif; color:#5e5e5e; padding:5px; margin:0; line-height:1.8em;}.top_text h2 { font: normal 18px Arial, Helvetica, sans-serif; color:#171717; padding:5px; margin:0; border-bottom:1px solid #e2e2e2;}.top_text a { color:#1f1f1f; font: bold 12px Arial, Helvetica, sans-serif; text-decoration:none;}.top_text img { float:left; margin:5px 10px; padding:0;}.top_text .block { width:300px; float:left; padding:5px; margin:0 0 0 7px;}/********** body **********/.body_resize { margin:0; padding:0;  background:#fff; border-top:1px solid #e6e6e6;}.body { width:960px;  margin:0 auto; padding:10px 30px;}.body h2 { border-bottom:1px solid #dedede; font: bold 20px Arial, Helvetica, sans-serif; color:#282828; margin:0;  padding:10px 5px;}.body h2 span {  font: normal 11px Arial, Helvetica, sans-serif; color:#c0c0c0;}.body h3 { font: bold 12px Arial, Helvetica, sans-serif; color:#454646; border-bottom:1px solid #dedede;  margin:0;  padding:10px 5px;}.body img { float:left; padding:0; margin:10px 5px;}.body img.port { float:left; padding:0; margin:5px 1px;}.body img.floated { float:right; padding:0; margin:0 5px;}.body p { font:normal 12px Arial, Helvetica, sans-serif; color:#747474; line-height:1.8em; padding:5px 5px; margin:0;}.body p span { color:#8e8e8e; font: normal 11px Arial, Helvetica, sans-serif; line-height:1.8em;}.body a { text-decoration:none; color:#0db8d5; line-height:1.8em; font: bold 12px Arial, Helvetica, sans-serif;}.body_small { width:290px; float:right; margin:5px 0 5px 15px; padding:0;}.body_small1 { width:400px; float:right; margin:2px 0 1px 5px; padding:0;}.body_big {    width:600px;    float:left;    padding:0;    margin-top: 5px;    margin-right: 0;    margin-bottom: 2px;    margin-left: 2px;}.body_big1 {    width:500px;    float:left;    padding:0;    margin-top: 5px;    margin-right: 0;    margin-bottom: 5px;    margin-left: 5px;}.body .block2 { width:290px; margin:5px; padding:0; float:left;}/* END_bloga*//*************footer**********/.footer {padding:0 0 20px 0;  margin:0 auto;  border-top:1px solid #ddd; }.footer_resize { margin:0 auto; padding:10px 0 0 0; width:960px; height:60px}.footer p { font:normal 11px  Arial, Helvetica, sans-serif; color:#676767;}.footer a { font: normal 11px Arial, Helvetica, sans-serif; color:#676767; text-decoration:none; padding:5px; margin:0;}.footer img { margin:0; padding:0; float:left;}.footer p.leftt { text-align:left; width:310px; margin:0; padding:15px 0 0 0; float:right;} /********** contact form **********/.form { float:left; width:560px; margin-top:40px; margin-left:10px;}/********** contact form **********/#contactform { margin:0; padding:5px 10px;}#contactform * { color:#7a7a7a;}#contactform ol { margin:0; padding:0; list-style:none;}#contactform li { margin:0; padding:0; background:none; border:none; display:block;}#contactform li.buttons { margin:5px 0 5px 0;}#contactform label { float:left; margin:0; width:100px; padding:5px 0; font:bold 12px Arial, Helvetica, sans-serif; color:#444444; text-transform:capitalize;}#contactform label span { font:normal 10px Arial, Helvetica, sans-serif;}#contactform input.text { width:420px; border:1px solid #e7e7e7; margin:5px 0; padding:5px 2px; height:15px; background:#f8f8f8;}#contactform textarea { width:420px; border:1px solid #e7e7e7; margin:10px 0; padding:2px; background:#f8f8f8; height:250px;}#contactform li.buttons input { padding:3px 0; margin:0 0 0 420px; border:0; color:#FFF;}p.response { text-align:center; color:#2c2c2c; font:bold 11px Arial, Helvetica, sans-serif; line-height:1.8em; width:auto;}p.clr, .clr { clear:both; padding:0; margin:0;}li.bg, .bg { clear:both; border-bottom:1px solid #dedede; padding:10px 0 0 0; margin:0 0 10px 0; background:none; list-style:none;}.contactheader {    font-family: arial;    font-size: 16px;    color:0db8d5;    font-weight: bold;}.contacttext {    font-family: arial;    font-size: 16px;    color: #333;}.contactheader {    font-family: arial;    font-size: 16px;    font-weight: bold;    color: #3dc3f5;}.contact.text {    font-family: arial;    font-size: 16px;    color: #333;}
 
Back
Top