Out of curiosity, considering the example below, why does having the margin on the #container div cause a vertical scrollbar to appear in the browser? The container is much
adding float:left; is nice, but will interfere with central horizontal positioning using margin:auto;
float:left;
margin:auto;
if you know how big your margin is, you can account for that in your height percentage using calc:
height: calc(100% - 50px);
browser support is good, but only IE11+ https://caniuse.com/#feat=calc