title: Container with height:100% is larger than the whole page
body: <p>I'm trying to fill the content container to 100% of the height while having a 30px header. But currently, the content container is larger than 100% which results in a scrollbar.</p>
  
  <p><strong>Code</strong></p>
  
  <p><div class="snippet" data-lang="js" data-hide="false">
  <div class="snippet-code">
  <pre class="snippet-code-css lang-css prettyprint-override"><code>html {
    padding:0;
    margin: 0;
    height:100%;
  }
  body {
    padding:0;
    margin: 0;
    height:100%;
  }
  #header {
    height: 30px;
    background: black;
    width: 100%;
    position: absolute;
    z-index: 2;
  }
  #container {
    position: relative;
    height:100%;
    padding-top:30px;
    background-color: #aaaaaa;
  }</code></pre>
  <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;!DOCTYPE html&gt;
  &lt;html&gt;
    &lt;head&gt;
      &lt;link rel="stylesheet" href="style.css"&gt;
      &lt;script src="script.js"&gt;&lt;/script&gt;
    &lt;/head&gt;
    &lt;body&gt;
      &lt;div id="header"&gt;&lt;/div&gt;
      &lt;div id="container"&gt;&lt;/div&gt;
    &lt;/body&gt;
  &lt;/html&gt;  </code></pre>
  </div>
  </div>
  </p>
  
  <p>Demo: <a href="https://plnkr.co/edit/48SJjl9dB7S7IiC8JLcP?p=preview" rel="nofollow">https://plnkr.co/edit/48SJjl9dB7S7IiC8JLcP?p=preview</a></p>
  
  <p>What's the correct way to accomplish this? If it's possible I would even prefer to have the header positioned "relatively" and not absolute. But probably that's not possible?</p>