I haven't seen anything like this posted yet, but I thought I'd put it out there.
<div class="main">
<header>Header</header>
<div class="content">Content</div>
Then CSS:
body, html {
height: 100%;
margin: 0;
padding: 0;
}
.main {
height: 100%;
padding-top: 50px;
box-sizing: border-box;
}
header {
height: 50px;
margin-top: -50px;
width: 100%;
background-color: #5078a5;
}
.content {
height: 100%;
background-color: #999999;
}
Here is a working jsfiddle
Note: I have no idea what the browser compatability is for this. I was just playing around with alternate solutions and this seemed to work well.