Fixed Header Div With Scrollable Div Below
I'm trying to place two divs one above the other. The top one has a fixed size. The bottom one needs to fill the rest of the page height, without making the page higher if it's con
Solution 1:
Try this:
#stuff {
overflow-x:auto;
background-color: lightgreen;
top:30px; /* as the height of the other div is 30px */left:0;
right:0;
bottom:0;
position:absolute;
}
Solution 2:
In case if anyone wants to solve this keeping things in normal flow, nowadays this can be done using the flexbox layout model as shown below:
* {
margin: 0;
padding: 0;
}
html,
body {
height: 100%;
}
#content {
display: flex;
flex-direction: column;
width: 300px;
height: 100%;
margin: 0 auto;
background-color: #C9E6FF;
}
#top-padding {
height: 30px;
flex: none;
background: blue;
}
#stuff {
flex: auto;
overflow-y: auto;
background-color: lightgreen;
}
/*for demo purpose */#stuffp {
height: 1000px;
}
<divid="content"><divid="top-padding"></div><divid="stuff"><p>some content</p></div></div>
Solution 3:
And in case if anyone wants to solve this keeping things in normal flow and without using flex, then solution is as follows:
html,
body {
height: 100%;
}
body {
margin: 0;
}
#content {
height: 100vh;
position: relative;
background-color: #C9E6FF;
margin: 0 auto;
width: 300px;
}
#top-padding {
background: blue;
height: 30px;
}
#stuff {
overflow-x:auto;
background-color: lightgreen;
height: calc(100vh - 30px);
}
<divid="content"><divid="top-padding"></div><divid="stuff"><p>Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...Lorem ipsum dolor sit amet...</p></div></div>
Post a Comment for "Fixed Header Div With Scrollable Div Below"