title: what causes the margin top to not show?
body: <p>why the  <code>margin-top: 20px;</code> in footer  doesn't work? what's the reason may be cause to this?</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-css lang-css prettyprint-override"><code>#main {
    margin: 0 auto;
    width: 960px;
  }
  
  #left {
    float: left;
    border: 1px solid red;
    width: 300px;
    margin-right: 10px;
    height: 500px;
  }
  
  #right {
    float: right;
    border: 1px solid green;
    width: 500px;
    height: 500px;
  }
  
  #footer {
    clear: both;
    margin-top: 20px;
    border: 1px solid lime;
    height: 200px;
  }</code></pre>
  <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;div id="main"&gt;
    &lt;div id="left"&gt;&lt;/div&gt;
    &lt;div id="right"&gt;&lt;/div&gt;
    &lt;div id="footer"&gt;&lt;/div&gt;
  &lt;/div&gt;</code></pre>
  </div>
  </div>
  </p>