How to clip div on scrolling page? - html

I'm trying to get this layout to work so that the content in the middle section gets clipped when it reaches the top (header) panel.
I do NOT want to fill the top panel with a background colour (to hide the content), because I want to place a background image on the page. I need scroll bars for the entire page, not just the content div because that makes it look like an iframe (ugly).
The code is the one below. If you scroll the page, the text goes into the top panel. I want it to get clipped/masked when it hits the top panel.
/* Reset body padding and margins */
body {
margin: 0;
padding: 0;
}
/* Make Header Sticky */
#header_container {
border: 1px solid #666;
height: 60px;
left: 0;
position: fixed;
width: 100%;
top: 0;
}
#header {
line-height: 60px;
margin: 0 auto;
width: 940px;
text-align: center;
}
/* CSS for the content of page. I am giving top and bottom padding of 80px to make sure the header and footer do not overlap the content.*/
#container {
margin: 0 auto;
overflow: auto;
padding: 80px 0;
width: 940px;
}
#content {}
/* Make Footer Sticky */
#footer_container {
background: #eee;
border: 1px solid #666;
bottom: 0;
height: 60px;
left: 0;
position: fixed;
width: 100%;
}
#footer {
line-height: 60px;
margin: 0 auto;
width: 940px;
text-align: center;
}
<body>
<html>
<!-- BEGIN: Sticky Header -->
<div id="header_container">
<div id="header">
Header Content
</div>
</div>
<!-- END: Sticky Header -->
<!-- BEGIN: Page Content -->
<div id="container">
<div id="content">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc sit amet ipsum magna, et convallis sem. Nunc pulvinar magna vitae orci malesuada blandit. Proin ac purus dui. Suspendisse venenatis egestas egestas. Sed tincidunt diam et massa convallis et
mollis enim malesuada. Nullam eget metus nunc, eget imperdiet urna. Quisque vehicula ipsum non sapien vulputate convallis quis quis ligula. Aenean gravida mollis blandit. Nullam lacus tortor, viverra a auctor ac, porta eget neque. Duis placerat
mi metus, a gravida quam.
<br /><br /> Nam ut augue mauris, at dapibus quam. Pellentesque eu nunc enim. Proin facilisis, dolor nec sollicitudin mattis, sem velit mollis sem, sagittis sagittis libero ante id nunc. Nam congue, mauris non porttitor convallis, purus elit faucibus
nunc, in mollis sem lorem eu tortor. Cras nec justo id libero fringilla placerat ac et leo. Mauris ac vehicula odio. Cras augue erat, sodales vel porttitor ut, scelerisque nec justo. Praesent vitae lorem erat. Suspendisse elementum tortor vitae
diam venenatis eget fermentum lacus suscipit. Quisque varius vulputate tempus.
<br /><br /> Aliquam lacinia lacus vel ante sagittis vestibulum fringilla sem accumsan. Phasellus eget dictum ipsum. Sed sed aliquam nisi. Nam vitae tempus tellus. Vestibulum convallis tellus diam, sed posuere lectus. Nulla diam velit, tristique
in dignissim quis, porta eu nulla. Quisque quis nisl urna, id adipiscing quam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Integer justo nisi, sollicitudin vitae porttitor eu, elementum ut ante.
<br /><br /> Proin id odio nibh. Integer adipiscing fermentum tellus consectetur hendrerit. Sed porta, lectus sed dictum tempor, risus orci lacinia nulla, non rutrum neque tellus vitae velit. Quisque ut lectus eget nunc vulputate ultrices eget vitae
metus. Vestibulum ac ligula urna, placerat scelerisque sem. Vestibulum porta interdum orci, quis porttitor arcu dictum pulvinar. Maecenas quis quam augue, accumsan consectetur arcu. Etiam quis augue quam, at auctor diam. Donec varius venenatis diam
at pulvinar. Donec imperdiet elit id urna tincidunt commodo eget ut metus. Nam convallis malesuada dapibus. Aenean erat nunc, tempus id facilisis ac, dignissim nec urna.
<br /><br /> Vestibulum at neque id libero ornare iaculis sed in libero. Nunc erat lectus, dignissim id congue ut, ornare sit amet nunc. Sed dignissim, massa tempus rutrum fringilla, justo lectus rutrum neque, at posuere orci nunc quis lacus. Phasellus
semper turpis et arcu euismod eget pharetra nisi ultricies. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Aenean tempor, tellus sed interdum aliquet, dolor nibh hendrerit est, sed mattis tortor massa in
lectus. Vivamus eu ligula nibh, vel consectetur quam. Quisque in erat vitae est feugiat porttitor. Pellentesque dui nulla, pulvinar sed feugiat ut, laoreet a urna. Aenean id elit quis quam eleifend luctus sit amet at dolor. Duis eu tellus at libero
venenatis blandit. Mauris pharetra venenatis leo sed vehicula. Pellentesque rhoncus enim at nulla euismod tincidunt.
<br /><br /> Maecenas imperdiet nibh massa. In id eros in massa posuere blandit non sit amet lacus. Phasellus vitae lectus pretium nunc aliquam ullamcorper. Pellentesque quis urna ligula, nec placerat magna. Sed nisl turpis, porta at tincidunt eget,
vulputate sed magna. Nullam rutrum ipsum et lectus congue id rhoncus lectus bibendum. Vestibulum pretium velit id arcu rhoncus ac lobortis turpis tristique. Nullam viverra posuere leo sit amet dapibus. Fusce id imperdiet leo. Mauris et nisi diam.
Aenean lobortis vulputate massa, ut pellentesque mauris porta in. Fusce sollicitudin, massa consectetur ultrices varius, dolor ligula ullamcorper velit, non varius lorem urna vel diam.
<br /><br /> Morbi feugiat eleifend eros vel accumsan. Sed pellentesque vulputate libero eu mattis. Quisque sollicitudin aliquet ligula a molestie. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Donec pellentesque
lacinia varius. Etiam dictum hendrerit enim in euismod. Phasellus cursus odio vitae mauris mattis sed tincidunt nisi imperdiet. Duis sit amet neque diam. Aliquam aliquet molestie orci non vulputate. Maecenas non rhoncus eros. Integer auctor nisl
id elit posuere mollis. Nullam iaculis mattis justo sed accumsan.
<br /><br /> Proin ut ultricies odio. Duis consequat porta leo, in dictum urna facilisis id. Quisque facilisis massa a risus sodales accumsan. Maecenas at diam odio. Proin sem ligula, ullamcorper vel convallis at, vehicula ut augue. Pellentesque
euismod turpis eget metus fermentum adipiscing. Mauris nulla eros, imperdiet nec placerat eget, rutrum sed eros. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Donec tempor hendrerit porttitor. Lorem
ipsum dolor sit amet, consectetur adipiscing elit. Aliquam erat volutpat. Praesent faucibus ultricies scelerisque. Vivamus mi enim, tincidunt et lacinia vitae, aliquet in risus. Suspendisse sed felis magna, non facilisis dolor. Quisque rutrum, risus
quis sodales porta, sem magna ullamcorper odio, dictum aliquam felis sem et risus.
<br /><br /> Aenean lacinia quam vitae leo gravida in pellentesque eros congue. Praesent sit amet eleifend mi. Sed non justo erat. Donec eleifend velit vel quam mollis tempus. Curabitur et est turpis. Etiam consectetur velit eget erat euismod tempus.
Proin egestas venenatis velit ac volutpat. Sed id egestas mauris. Aliquam nulla mi, malesuada eu venenatis ac, fermentum ut eros. Ut nec consequat mi. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aliquam
eu magna urna, vel imperdiet sapien. Vestibulum lacinia porttitor mi, at molestie enim aliquet non. Sed rutrum, risus vel aliquam varius, nunc lectus porttitor velit, a sollicitudin magna quam et lacus. Praesent consectetur hendrerit arcu non viverra.
<br /><br /> Nam sit amet faucibus augue. Proin arcu lacus, fermentum ac tincidunt vel, porttitor id libero. Sed at arcu at metus congue scelerisque. Maecenas quis erat magna, ac tempor erat. Curabitur mollis nisl in nunc fringilla eget interdum
ante ullamcorper. Etiam eget magna sit amet nunc tincidunt tempus vitae vitae ligula. Morbi iaculis nisl id libero scelerisque tempor. Morbi tincidunt, felis non congue molestie, metus enim venenatis nunc, ac sodales nibh massa eget orci. Morbi
mauris lorem, auctor nec porttitor eget, interdum at tortor. Sed malesuada nibh sed enim scelerisque id tristique neque rhoncus. Nulla vulputate purus a arcu egestas ultricies.
</div>
</div>
<!-- END: Page Content -->
<!-- BEGIN: Sticky Footer -->
<div id="footer_container">
<div id="footer">
Footer Content
</div>
</div>
<!-- END: Sticky Footer -->
</body>
</html>

You do not need to clip the content. Use the background attribute to hide the content.
/* Reset body padding and margins */
body { margin:0; padding:0; }
/* Make Header Sticky */
#header_container { border:1px solid #666; height:60px; left:0; position:fixed; width:100%; top:0; background-color: white; }
#header{ line-height:60px; margin:0 auto; width:940px; text-align:center; }
/* CSS for the content of page. I am giving top and bottom padding of 80px to make sure the header and footer do not overlap the content.*/
#container { margin:0 auto; overflow:auto; padding:80px 0; width:940px; }
#content{}
/* Make Footer Sticky */
#footer_container { background:#eee; border:1px solid #666; bottom:0; height:60px; left:0; position:fixed; width:100%; }
#footer { line-height:60px; margin:0 auto; width:940px; text-align:center; }
<body>
<html>
<!-- BEGIN: Sticky Header -->
<div id="header_container">
<div id="header">
Header Content
</div>
</div>
<!-- END: Sticky Header -->
<!-- BEGIN: Page Content -->
<div id="container">
<div id="content">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc sit amet ipsum magna, et convallis sem. Nunc pulvinar magna vitae orci malesuada blandit. Proin ac purus dui. Suspendisse venenatis egestas egestas. Sed tincidunt diam et massa convallis et mollis enim malesuada. Nullam eget metus nunc, eget imperdiet urna. Quisque vehicula ipsum non sapien vulputate convallis quis quis ligula. Aenean gravida mollis blandit. Nullam lacus tortor, viverra a auctor ac, porta eget neque. Duis placerat mi metus, a gravida quam.
<br /><br />
Nam ut augue mauris, at dapibus quam. Pellentesque eu nunc enim. Proin facilisis, dolor nec sollicitudin mattis, sem velit mollis sem, sagittis sagittis libero ante id nunc. Nam congue, mauris non porttitor convallis, purus elit faucibus nunc, in mollis sem lorem eu tortor. Cras nec justo id libero fringilla placerat ac et leo. Mauris ac vehicula odio. Cras augue erat, sodales vel porttitor ut, scelerisque nec justo. Praesent vitae lorem erat. Suspendisse elementum tortor vitae diam venenatis eget fermentum lacus suscipit. Quisque varius vulputate tempus.
<br /><br />
Aliquam lacinia lacus vel ante sagittis vestibulum fringilla sem accumsan. Phasellus eget dictum ipsum. Sed sed aliquam nisi. Nam vitae tempus tellus. Vestibulum convallis tellus diam, sed posuere lectus. Nulla diam velit, tristique in dignissim quis, porta eu nulla. Quisque quis nisl urna, id adipiscing quam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Integer justo nisi, sollicitudin vitae porttitor eu, elementum ut ante.
<br /><br />
Proin id odio nibh. Integer adipiscing fermentum tellus consectetur hendrerit. Sed porta, lectus sed dictum tempor, risus orci lacinia nulla, non rutrum neque tellus vitae velit. Quisque ut lectus eget nunc vulputate ultrices eget vitae metus. Vestibulum ac ligula urna, placerat scelerisque sem. Vestibulum porta interdum orci, quis porttitor arcu dictum pulvinar. Maecenas quis quam augue, accumsan consectetur arcu. Etiam quis augue quam, at auctor diam. Donec varius venenatis diam at pulvinar. Donec imperdiet elit id urna tincidunt commodo eget ut metus. Nam convallis malesuada dapibus. Aenean erat nunc, tempus id facilisis ac, dignissim nec urna.
<br /><br />
Vestibulum at neque id libero ornare iaculis sed in libero. Nunc erat lectus, dignissim id congue ut, ornare sit amet nunc. Sed dignissim, massa tempus rutrum fringilla, justo lectus rutrum neque, at posuere orci nunc quis lacus. Phasellus semper turpis et arcu euismod eget pharetra nisi ultricies. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Aenean tempor, tellus sed interdum aliquet, dolor nibh hendrerit est, sed mattis tortor massa in lectus. Vivamus eu ligula nibh, vel consectetur quam. Quisque in erat vitae est feugiat porttitor. Pellentesque dui nulla, pulvinar sed feugiat ut, laoreet a urna. Aenean id elit quis quam eleifend luctus sit amet at dolor. Duis eu tellus at libero venenatis blandit. Mauris pharetra venenatis leo sed vehicula. Pellentesque rhoncus enim at nulla euismod tincidunt.
<br /><br />
Maecenas imperdiet nibh massa. In id eros in massa posuere blandit non sit amet lacus. Phasellus vitae lectus pretium nunc aliquam ullamcorper. Pellentesque quis urna ligula, nec placerat magna. Sed nisl turpis, porta at tincidunt eget, vulputate sed magna. Nullam rutrum ipsum et lectus congue id rhoncus lectus bibendum. Vestibulum pretium velit id arcu rhoncus ac lobortis turpis tristique. Nullam viverra posuere leo sit amet dapibus. Fusce id imperdiet leo. Mauris et nisi diam. Aenean lobortis vulputate massa, ut pellentesque mauris porta in. Fusce sollicitudin, massa consectetur ultrices varius, dolor ligula ullamcorper velit, non varius lorem urna vel diam.
<br /><br />
Morbi feugiat eleifend eros vel accumsan. Sed pellentesque vulputate libero eu mattis. Quisque sollicitudin aliquet ligula a molestie. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Donec pellentesque lacinia varius. Etiam dictum hendrerit enim in euismod. Phasellus cursus odio vitae mauris mattis sed tincidunt nisi imperdiet. Duis sit amet neque diam. Aliquam aliquet molestie orci non vulputate. Maecenas non rhoncus eros. Integer auctor nisl id elit posuere mollis. Nullam iaculis mattis justo sed accumsan.
<br /><br />
Proin ut ultricies odio. Duis consequat porta leo, in dictum urna facilisis id. Quisque facilisis massa a risus sodales accumsan. Maecenas at diam odio. Proin sem ligula, ullamcorper vel convallis at, vehicula ut augue. Pellentesque euismod turpis eget metus fermentum adipiscing. Mauris nulla eros, imperdiet nec placerat eget, rutrum sed eros. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Donec tempor hendrerit porttitor. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam erat volutpat. Praesent faucibus ultricies scelerisque. Vivamus mi enim, tincidunt et lacinia vitae, aliquet in risus. Suspendisse sed felis magna, non facilisis dolor. Quisque rutrum, risus quis sodales porta, sem magna ullamcorper odio, dictum aliquam felis sem et risus.
<br /><br />
Aenean lacinia quam vitae leo gravida in pellentesque eros congue. Praesent sit amet eleifend mi. Sed non justo erat. Donec eleifend velit vel quam mollis tempus. Curabitur et est turpis. Etiam consectetur velit eget erat euismod tempus. Proin egestas venenatis velit ac volutpat. Sed id egestas mauris. Aliquam nulla mi, malesuada eu venenatis ac, fermentum ut eros. Ut nec consequat mi. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aliquam eu magna urna, vel imperdiet sapien. Vestibulum lacinia porttitor mi, at molestie enim aliquet non. Sed rutrum, risus vel aliquam varius, nunc lectus porttitor velit, a sollicitudin magna quam et lacus. Praesent consectetur hendrerit arcu non viverra.
<br /><br />
Nam sit amet faucibus augue. Proin arcu lacus, fermentum ac tincidunt vel, porttitor id libero. Sed at arcu at metus congue scelerisque. Maecenas quis erat magna, ac tempor erat. Curabitur mollis nisl in nunc fringilla eget interdum ante ullamcorper. Etiam eget magna sit amet nunc tincidunt tempus vitae vitae ligula. Morbi iaculis nisl id libero scelerisque tempor. Morbi tincidunt, felis non congue molestie, metus enim venenatis nunc, ac sodales nibh massa eget orci. Morbi mauris lorem, auctor nec porttitor eget, interdum at tortor. Sed malesuada nibh sed enim scelerisque id tristique neque rhoncus. Nulla vulputate purus a arcu egestas ultricies.
</div>
</div>
<!-- END: Page Content -->
<!-- BEGIN: Sticky Footer -->
<div id="footer_container">
<div id="footer">
Footer Content
</div>
</div>
<!-- END: Sticky Footer -->
</body>
</html>
I added background-color: white; to your css, and the text is now hidden behind the white background of the header element.
You can also clip the text by fixing the div size and setting some other css attributes such as overflow-y: hidden, that will cause anything that scrolls out of the center div to be hidden from view.

Related

Fixed header, centered scrollable body with max width and scrollbar to the side with paddingY

I'm building a react app with flexbox and I'm struggling getting all the pieces as I want them.
I want a fixed header at the top with a body that has its content centered and that can be scrolled (the scrollbar has to start in the body, not the header). This body can't go to the edges of the page so I'm using max-width to prevent this. The problem is that when I use the max-width, the scrollbar gets placed next to the body and it looks awful. I want it to stay at the far right of the page. Finally I want some space between the end of the body and the page (a bit of padding, if you will) so the content doesn't look like it's getting cut with the end of the site.
I've done this mockup in Photoshop
I mostly got the code working, minus the max-width and bottom padding. Here's what I got:
html, body {
margin: 0;
height: 100%;
}
#container {
display: flex;
flex-direction: column;
height: 100%;
}
header {
background: white;
height: 50px;
}
main {
flex: 1;
overflow: auto;
}
<div id="container">
<header>top</header>
<main>
...
</main>
</div>
I understand that this question has been asked in multiple ways a lot of times, but I've been looking for a while and I can't find the right one that fixes every thing I need.
Thank you for the help.
What you can do is add another element within the <main> tag. I use a <div> tag in my example, but it could be whatever you want. Keep the
overflow: auto;
on the <main> tag, so when the inner div overflows, you can scroll the <main> tag to move the <div>
Here's an example where I added some background color to show separation and some Lorem Ipsum text:
html, body {
margin: 0;
height: 100%;
}
#container {
display: flex;
flex-direction: column;
height: 100%;
}
header {
background: white;
height: 50px;
text-align: center;
}
#stuff {
border-radius: 5px;
background: pink;
padding: 5px;
margin: 20px;
flex: 1;
}
main {
overflow: auto;
}
<div id="container">
<header>top</header>
<main>
<div id="stuff">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut nec magna porta, commodo magna ut, porta erat. Phasellus tristique leo vitae ante efficitur, sed fermentum mi auctor. In condimentum mi a urna cursus vestibulum. Nunc posuere metus turpis, faucibus viverra purus aliquam nec. Curabitur ultrices, sem nec aliquet congue, ligula justo sagittis arcu, quis blandit urna sem nec sem. Cras accumsan, turpis ac placerat porta, libero ex semper tellus, non mattis dui ligula id odio. Cras lobortis ex in ex consequat, eu viverra nibh luctus. Nulla facilisi. Nulla odio arcu, suscipit eu dui eget, cursus sodales ipsum. Nulla vestibulum nisl eget ante pellentesque, vel porttitor magna dapibus. Suspendisse at ligula nunc. Phasellus scelerisque urna sit amet scelerisque pharetra. Quisque risus metus, tincidunt vitae ultricies in, convallis tempus justo. Sed finibus laoreet dolor sit amet tincidunt. Sed efficitur volutpat aliquet.
Suspendisse condimentum euismod quam id tempor. Vestibulum rhoncus metus eu tortor rhoncus eleifend. Nam sagittis ex ex, eget varius ante semper a. Aenean vulputate eget ligula vel sodales. Vivamus vel nisi dignissim, eleifend sem non, bibendum dolor. Ut pulvinar malesuada nisi sit amet suscipit. Sed ultrices maximus tellus, nec congue felis.
Duis urna orci, consequat et lacinia lobortis, varius sed sem. Ut auctor congue augue quis interdum. Morbi erat justo, venenatis ac imperdiet sit amet, cursus eget tellus. Quisque accumsan nibh a dui vulputate tincidunt. Aenean accumsan diam lorem, ac rutrum magna ullamcorper et. Proin volutpat dolor tristique scelerisque tempus. Donec eu neque non purus pulvinar bibendum sed vitae justo. Suspendisse luctus dolor neque, eu convallis tortor condimentum ac. Aliquam sollicitudin ex ut sollicitudin sagittis. Aliquam imperdiet, diam vel hendrerit iaculis, neque ex accumsan neque, in hendrerit risus massa convallis ante. Cras urna velit, cursus sed dignissim vitae, porttitor faucibus est. Vestibulum ut dolor aliquam, malesuada velit ut, vestibulum nibh. Maecenas at convallis ex, a aliquam dui. Mauris at eros sit amet leo gravida pulvinar.
Interdum et malesuada fames ac ante ipsum primis in faucibus. Nunc faucibus laoreet ipsum, facilisis facilisis quam ultrices et. Vivamus interdum ut tortor sit amet sollicitudin. Cras rhoncus blandit lectus sed maximus. Integer ac dui nec metus dignissim lobortis vel vel erat. Cras in dignissim arcu. Nunc vulputate mi turpis, at dignissim turpis ullamcorper vitae. Cras neque justo, sagittis ut tempus vitae, pellentesque a mi.
Duis vehicula eros erat, vel tincidunt ante aliquet eget. Ut malesuada, est a sollicitudin tincidunt, magna ante varius est, vitae pulvinar arcu neque sit amet magna. Sed sit amet erat fermentum, bibendum ex sed, dictum lorem. Ut aliquam nibh vitae tellus convallis, sed condimentum augue suscipit. Nunc ac tellus sem. Maecenas vitae finibus lorem. Ut et fringilla lacus. Morbi neque lacus, rhoncus non odio et, sodales ultrices erat. Pellentesque molestie et felis sit amet pharetra. Curabitur id lacinia dolor. Curabitur non dignissim lorem, eleifend posuere lorem. Aliquam orci felis, vulputate vel felis molestie, vestibulum tempor tellus. Quisque mollis mauris blandit posuere tincidunt. Suspendisse condimentum est at enim interdum condimentum.
Aliquam a risus cursus, pretium dui nec, consectetur elit. Sed sollicitudin consectetur magna id accumsan. Quisque interdum tristique diam, at porta orci condimentum ut. Curabitur in metus purus. Donec diam orci, volutpat eu rhoncus in, accumsan sed neque. Nam egestas vestibulum vestibulum. Mauris fringilla, enim in finibus hendrerit, metus urna finibus lacus, in dictum eros eros vel orci. Aliquam blandit elit sem, vel fringilla libero commodo eu. Cras euismod a mauris non malesuada. Aliquam luctus malesuada nisl sed efficitur. Mauris suscipit convallis venenatis. Ut varius velit vitae scelerisque fermentum. Donec luctus convallis hendrerit. Sed vestibulum, diam at euismod lacinia, dolor eros commodo lacus, vitae pellentesque dui metus vel leo.
In hac habitasse platea dictumst. Nam massa lectus, fermentum non dolor eu, auctor luctus ex. Duis posuere sit amet lorem ut commodo. Pellentesque ultrices in tortor vel dignissim. Quisque lorem nibh, ullamcorper in sem nec, rhoncus posuere tortor. Aenean vitae feugiat nisi. Proin elementum sollicitudin iaculis. Morbi nec erat volutpat, posuere augue quis, porttitor erat. Aliquam dignissim blandit laoreet. Donec consectetur a risus et varius. Suspendisse quis vulputate tellus.
Nunc eget erat id lacus dictum viverra. Vivamus vel vehicula ipsum. Fusce convallis leo diam, sed consectetur nulla sagittis rutrum. Curabitur nec ligula convallis ex rutrum fermentum. Donec auctor, erat quis euismod maximus, sem massa fermentum tortor, non scelerisque nibh nisi at arcu. Vivamus sodales fermentum nisi quis tempus. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. In hac habitasse platea dictumst.
Nunc et lacus ac augue tincidunt pellentesque. Sed at odio at sem lobortis vestibulum. Sed cursus augue et sapien eleifend tempor. Etiam suscipit mi non est vehicula tincidunt a vitae libero. In blandit fringilla lectus non dignissim. In interdum, nisl non suscipit sagittis, sem erat sagittis ex, quis egestas lorem tellus nec metus. Suspendisse suscipit ultrices nunc eget vulputate. Donec mollis condimentum massa. Suspendisse potenti. Fusce eget urna ut dui fringilla faucibus et id justo.
Suspendisse posuere justo eget bibendum venenatis. Pellentesque sollicitudin nisi augue. Nunc sed justo ac mi ultrices elementum sit amet non lorem. Maecenas accumsan vehicula urna, sit amet posuere dolor malesuada at. Morbi vitae mi sed est suscipit euismod. Aliquam erat volutpat. Nulla elit purus, elementum at odio eget, tempor efficitur leo. Nunc dapibus erat nec faucibus rhoncus. Curabitur accumsan nibh sit amet sagittis placerat. Donec mollis metus eu metus eleifend ornare.
</div>
</main>
</div>

fix a <p> tag at the top of my page while scrolling

While scrolling i'm trying to fix a p tag with my name on it on the top of the page but nothing seems to be working for me.
<div id="page-content-wrapper">
<p class="logo "><b>Mostafa</b> Masri</p>
<button type="button" class="hamburger is-closed" data-toggle="offcanvas">
<span class="hamb-top"></span>
<span class="hamb-middle"></span>
<span class="hamb-bottom"></span>
</button>
</div>
<style>.logo {/*position: sticky;*/ top: 60px; /*left: 77px;*/ font size: 21px; text-transform: uppercase opacity: .8; margin: 0; position:absolute; top: 0; right:0; padding:19px;} </style>
Here's a possible solution using position: fixed.
.logo {
position: fixed;
top: 10px;
right: 10px;
font size: 21px;
text-transform: uppercase;
opacity: .8;
margin: 0;
padding: 19px;
}
<div id="page-content-wrapper">
<p class="logo ">
<b>Mostafa</b> Masri
</p>
<button type="button" class="hamburger is-closed" data-toggle="offcanvas">≡</button>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras at augue quis nulla iaculis tempus. Nunc ornare tempor justo ac pretium. Fusce lobortis tortor nunc, egestas aliquet sem congue eget. Nullam sed porttitor tortor, at suscipit nunc. Sed eget
diam sed lectus varius convallis. Sed interdum semper auctor. Nam vel nisi nisi. Etiam sem lacus, gravida sit amet odio sit amet, convallis pellentesque velit.</p>
<p>Aliquam pulvinar eu magna nec rhoncus. Nulla vel felis nec nisi faucibus varius sit amet in velit. Integer posuere eleifend metus, ac placerat erat elementum eu. Interdum et malesuada fames ac ante ipsum primis in faucibus. Vestibulum diam libero, rhoncus
at pretium a, ultrices eu mauris. Pellentesque blandit pretium mi eget lacinia. Nullam erat est, congue ultrices viverra eget, iaculis sit amet velit. Ut tempus lacinia ante, non venenatis leo. Fusce quis ipsum maximus, mattis felis at, feugiat lacus.
Morbi condimentum semper mi ac porttitor. Maecenas aliquam auctor mi, nec accumsan mauris congue a. Praesent rutrum porta sapien in scelerisque. Cras vehicula, tortor non hendrerit dictum, ex justo lacinia nulla, vitae dapibus nibh eros nec mauris.
Nulla sodales hendrerit odio et efficitur.</p>
<p>Fusce vel tempor elit, quis pharetra enim. Suspendisse potenti. Donec a arcu fermentum, venenatis tortor ac, mollis ante. Nullam vitae quam quis leo tempus iaculis id eget nibh. Maecenas consequat quis ante at lacinia. Donec auctor vel leo ut pretium.
Vestibulum hendrerit, nunc non scelerisque condimentum, dolor urna convallis sem, pulvinar vestibulum elit ante eget quam. Nunc pretium, lectus vel tincidunt lacinia, massa neque posuere felis, non tristique ipsum ante vitae dui. Mauris vitae nulla
quis mi congue eleifend non eu libero. Maecenas sit amet felis eu urna aliquam efficitur et congue nisi. Praesent sagittis nisi porttitor velit consequat, in feugiat quam ultrices. Cras sit amet enim ante. Fusce mi urna, volutpat semper justo ut,
feugiat mattis elit. Sed quis volutpat justo. Fusce pretium venenatis massa a aliquam.</p>
<p>Sed eu ultrices felis, et luctus metus. Donec justo felis, congue eget dui nec, commodo porttitor felis. Sed eu dui et risus condimentum rhoncus. Sed interdum libero ac risus convallis, sed placerat tortor interdum. Phasellus nec tristique eros, a ullamcorper
ex. Aliquam nulla nunc, placerat et urna vitae, eleifend condimentum arcu. Nullam diam arcu, dignissim eu lacus ac, porta pulvinar arcu. Sed ultrices luctus leo, ac blandit mi pellentesque a. Nunc ornare, arcu consectetur bibendum hendrerit, nulla
diam finibus est, non porta ligula erat vitae velit. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Maecenas sodales arcu a lacus luctus, non mollis neque placerat. Praesent lacinia nisl id lectus feugiat condimentum.
Vivamus convallis aliquam est vel sagittis. Etiam ullamcorper consequat sapien, ornare porttitor massa luctus non. Ut purus tellus, maximus eu iaculis a, porta ac mi.</p>
<p>Praesent suscipit risus vitae magna aliquet, sed egestas ipsum eleifend. Suspendisse tincidunt dolor at est rhoncus mollis. In convallis iaculis diam id finibus. Integer et mi blandit, imperdiet arcu in, accumsan velit. Pellentesque vitae tristique
odio. Pellentesque facilisis dolor at suscipit ultrices. In hac habitasse platea dictumst. Sed molestie ante quis rutrum vestibulum. Phasellus interdum eros ut sem porta, non facilisis velit fringilla.</p>
</div>

Transparent logo and header

I'm trying to buld header that is white, but on place where logo is transparent i want header to be transparent to so you can see trough logo. Is there any way to make one part of header transparent but all others white? As you can see logo is inside the header its 50x50px and i want that part to be all transparent
header {
width: 100%;
height: 165px;
z-index: 1000;
position: fixed;
top: 0;
left: 0;
border-bottom: 1px solid black;
background-color: white;
}
.content {
width: 960px;
margin: 0 auto;
}
nav {
float: right;
}
nav ul li {
display: inline;
list-style: none;
}
nav ul li a {
text-decoration: none;
}
<header>
<div class="content">
<img src="img/headerLogo.png" alt="NKO law firm company logo">
<nav class="main-navigation">
<ul>
<li>THE FIRM
</li>
<li>TEAM
</li>
<li>PRACTICE AREA
</li>
<li>RANKINGS
</li>
<li>CLIENTS
</li>
<li>CONTACTS
</li>
</ul>
</nav>
</div>
</header>
I came up with a bit of a "hacky" solution, using pseudo elements, that allows you to scale the size.
What's happening is that we're not setting a background colour directly on any of the elements. Instead, we are "faking" it by doing three things:
Adding border-bottom to the image, giving it a height equal to the
height of the header less the height of the image, and setting its
colour to white.
Adding a :before pseudo-element to the header, positioning it
top & left, with a background colour of white and a height equal to
that of the header. Using calc to set its width allows it to
scale to the left edge of the image and, effectively, hides it when
the window width is 960px or less as the result of the calculation
will be zero or a negative value.
Adding a :after pseudo-element to the header, positioning it top
& right, with a background colour of white and a height equal to
that of the header. The really "hacky" bit is setting the width
here. Using calc to subtract the widths of the :before element
and image works, provided the window width is greater than 960px -
less than that and the negative value of the :before width causes
the :after to encroach on the image. So we use 2 media queries to
set the width, the first as just explained for when the window width
is greater than 960px and the second for when the window width is
960px or less, which simply use calc to subtract the width of the
image from the overall width of the header.
body{
background:#ddd;
font-family:arial;
margin:0;
}
header{
border-bottom:1px solid #000;
height:165px;
width:100%;
left:0;
position:fixed;
top:0;
z-index:2;
}
header:before{
background:#fff;
content:"";
display:block;
left:0;
height:165px;
position:absolute;
top:0;
width:calc((100% - 960px) / 2);
z-index:1;
}
header:after{
background:#fff;
content:"";
display:block;
height:165px;
position:absolute;
right:0;
top:0;
z-index:1;
}
#media all and (min-width:961px){
header:after{
width:calc(100% - ((100% - 960px) / 2) - 50px);
}
}
#media all and (max-width:960px){
header:after{
left:50px;
}
}
.content{
width:960px;
margin:0 auto;
position:relative;
z-index:2;
}
img{
border-bottom:115px solid #fff;
height:50px;
width:50px;
}
nav{
float:right;
}
nav ul li{
display:inline;
list-style:none;
}
nav ul li a{
text-decoration:none;
}
main{
padding:176px 10px 10px;
}
main p{
margin:0 0 10px;
}
<header>
<div class="content">
<img src="img/headerLogo.png" alt="">
<nav class="main-navigation">
<ul>
<li>THE FIRM</li>
<li>TEAM</li>
<li>PRACTICE AREA</li>
<li>RANKINGS</li>
<li>CLIENTS</li>
<li>CONTACTS</li>
</ul>
</nav>
</div>
</header>
<main>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis cursus condimentum nulla. Maecenas rutrum non mauris nec finibus. Sed dictum rhoncus turpis quis suscipit. Aliquam quam tortor, aliquam et tristique vitae, tempus in est. Donec non eros ac enim fringilla pulvinar. Praesent aliquam velit vel lectus tincidunt mattis. Maecenas id vulputate est. Ut consequat placerat enim vel lacinia. Aenean nec mattis metus, id tempus diam. Nunc viverra est et nunc tincidunt, at ullamcorper magna blandit. Maecenas egestas lectus nunc, ac cursus erat ullamcorper nec. Curabitur ut imperdiet libero.</p>
<p>Donec lorem nisi, ullamcorper in ex eu, consequat tristique lorem. Pellentesque feugiat ultrices vestibulum. Integer aliquet sodales suscipit. Integer posuere non orci id commodo. Phasellus elementum velit purus, nec efficitur diam semper ut. Vivamus at lobortis velit. Aenean egestas vestibulum ante, nec laoreet lorem vestibulum non. Donec a velit augue. Donec varius vehicula volutpat. Proin quam arcu, sodales lobortis risus sagittis, gravida consequat dui. Praesent nec quam eu ligula ullamcorper gravida. Mauris et quam volutpat, blandit orci sit amet, convallis nibh. Proin maximus neque suscipit ex egestas, et scelerisque nisi blandit. Suspendisse nunc dui, ullamcorper vel metus non, condimentum tristique nisi. Nulla nunc mauris, euismod non velit ac, consequat fringilla lectus.</p>
<p>Ut nulla purus, dictum ultrices accumsan ultricies, tincidunt vitae libero. Pellentesque auctor nisl fringilla justo fringilla condimentum. Maecenas nisi lacus, tincidunt id consequat eu, auctor sollicitudin ex. Nulla vel ante a lectus pellentesque ornare. Sed id pulvinar dolor. Integer eget dui nulla. Fusce in orci nec nisi ultrices ultricies a sed urna. Proin rutrum tristique erat, id facilisis mi. Donec nec est et odio convallis porta.</p>
<p>Sed ornare convallis nibh ultricies bibendum. Cras condimentum tristique ipsum, eu aliquam tortor porta et. Quisque auctor erat at felis feugiat pretium. Etiam finibus pharetra libero, vel suscipit odio. Mauris placerat mollis nibh sed varius. Sed at ipsum sem. Aliquam dictum pulvinar feugiat. Aenean vel suscipit libero. Nullam fringilla massa dapibus tellus tincidunt, in blandit turpis bibendum. Phasellus ac congue diam. Fusce consequat facilisis sagittis. Duis non suscipit mi.</p>
<p>Aliquam et sodales ligula, vel porta nulla. Fusce quis ante dictum, porttitor odio quis, dictum arcu. Maecenas maximus tincidunt euismod. Aliquam mauris est, posuere eu nisl hendrerit, elementum bibendum sem. Aenean in est augue. Nulla maximus neque non eros imperdiet, at malesuada tortor viverra. Curabitur dolor est, eleifend quis velit quis, placerat condimentum mi. Pellentesque tempus orci sit amet lacus lacinia, venenatis vestibulum magna euismod. Donec rutrum dignissim orci, nec dignissim sem faucibus nec. Nullam vel gravida nunc.</p>
<p>Aliquam justo velit, porta nec venenatis et, fringilla ac nisi. Praesent pharetra nulla ut nibh tristique, ac vulputate orci elementum. Mauris erat turpis, aliquet id fringilla in, iaculis in quam. Proin tortor arcu, viverra non fermentum at, pretium quis sem. Vivamus in ex molestie, tempor sem sed, feugiat dui. Aenean imperdiet augue et sem laoreet, sit amet porta tellus tristique. Aliquam et dapibus tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Aenean ullamcorper vel lacus nec vulputate.</p>
<p>Sed sapien massa, laoreet vitae aliquam et, tincidunt in augue. Maecenas justo tellus, ullamcorper ut pellentesque non, pulvinar non mauris. Etiam eu molestie erat, ac tincidunt lectus. Morbi scelerisque dui malesuada justo venenatis, id porttitor sapien rhoncus. Vivamus sit amet turpis sit amet nibh elementum mollis eget in velit. Suspendisse hendrerit, felis at laoreet pharetra, magna lorem elementum tellus, vel vehicula arcu tortor in purus. Phasellus vehicula dui id dolor pellentesque imperdiet. Nam venenatis augue sed justo lacinia, et consequat nibh facilisis. Quisque auctor erat id sem tincidunt ultricies. Proin fringilla nisl at lectus viverra, sit amet rhoncus felis lobortis.</p>
<p>Suspendisse tempus imperdiet leo eget sollicitudin. Suspendisse blandit ultricies volutpat. Sed volutpat ligula id velit auctor, et eleifend sapien dictum. Aliquam in vestibulum odio. Donec metus orci, suscipit bibendum ex sit amet, fermentum facilisis sem. Morbi rhoncus turpis viverra dui lobortis auctor. Vestibulum sit amet ante metus. Sed ut ex id felis sollicitudin feugiat. Praesent lobortis convallis arcu, elementum malesuada sem dignissim vitae. Vivamus id vulputate nisl. Sed pulvinar vehicula lorem, vel imperdiet elit.</p>
<p>Proin orci erat, rhoncus ac fermentum nec, euismod non nisi. Sed ornare sapien vel interdum blandit. Duis odio sem, pretium ut diam non, tempus vestibulum mauris. Maecenas vitae sapien tempus, varius tortor posuere, ullamcorper purus. Nulla pulvinar quam ut orci tincidunt, eu sagittis ex aliquet. Donec vestibulum auctor est ac suscipit. Mauris tristique lacinia euismod. Nulla ante elit, ornare et luctus vitae, vehicula at ex. Nulla vel tristique dui. Nulla ac sagittis lectus. Curabitur auctor semper felis, et tempus turpis euismod eget. Morbi tempus auctor ante, nec volutpat leo accumsan sed. Nullam ullamcorper odio at nunc ornare porta. Cras at lacus dapibus, convallis lectus ut, elementum tortor. Sed at mauris mi.</p>
<p>Cras egestas mi libero, vel pharetra libero congue eget. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Cras pharetra, arcu quis tincidunt ullamcorper, arcu sem finibus justo, et luctus nunc justo in nunc. Fusce tempus fringilla diam a mattis. Ut nec est nisi. Fusce tristique nunc mauris, ut porttitor libero consectetur id. Donec libero orci, eleifend eget sagittis ut, venenatis ac justo.</p>
<p>Praesent auctor porta turpis at auctor. Quisque pulvinar nisi et dui convallis gravida. Aenean quis nulla neque. Pellentesque et erat at ipsum finibus ultricies. Curabitur eu euismod nulla, ac pretium augue. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Mauris feugiat lacinia augue ac fermentum. Donec scelerisque finibus felis, vitae dignissim lorem ultrices in. Etiam convallis arcu sed libero convallis, non dictum dolor luctus. Etiam eget eros laoreet, ullamcorper justo quis, mattis nibh. Nullam mauris metus, aliquam at turpis vitae, luctus ullamcorper tortor. Nullam maximus posuere quam, id efficitur sapien.</p>
<p>Maecenas purus metus, egestas quis eleifend cursus, euismod nec quam. Suspendisse a volutpat ligula. Nulla dignissim lacus eget rutrum sollicitudin. Pellentesque commodo accumsan ultrices. Quisque porttitor orci laoreet, sollicitudin mauris vitae, sollicitudin velit. Nunc auctor volutpat efficitur. Sed tempor odio neque, ac vehicula dui tincidunt at. Nullam enim ex, fermentum non gravida faucibus, vulputate non augue. Praesent vulputate pharetra suscipit. Maecenas tempor venenatis leo ut ullamcorper. Cras cursus iaculis risus vel eleifend.</p>
<p>Nunc dictum lacinia leo eget venenatis. Sed aliquet scelerisque neque, a convallis nisl. Mauris tempus libero efficitur ornare molestie. Integer non finibus ex, vitae tempus massa. Donec quis sem erat. Maecenas consectetur, nibh ac porta feugiat, nisi mauris dictum quam, ac rhoncus nulla nibh in augue. Suspendisse tristique ligula ex, viverra fermentum nisi mattis a. Duis ullamcorper dapibus felis ornare maximus. Cras et hendrerit elit. Sed rutrum eleifend ante, ac interdum elit placerat ac. Duis a consequat lacus. Morbi congue orci eget est bibendum vehicula. Quisque nec erat nec sapien porta elementum vel eget libero. Donec condimentum tortor quam, eu porttitor erat lacinia non. Maecenas vitae laoreet massa. Aenean convallis erat a rhoncus fermentum.</p>
<p>Etiam augue enim, egestas vel auctor et, finibus nec mi. Cras vitae lectus vitae orci ullamcorper posuere. Aliquam enim massa, maximus eu nibh quis, rhoncus varius augue. Praesent quis libero diam. Cras ut sem tellus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Donec non felis ac eros vehicula lobortis. Vestibulum malesuada leo sit amet bibendum sollicitudin. Ut euismod blandit purus at egestas. Nulla pellentesque risus vel libero vehicula efficitur. Nam id facilisis diam, vestibulum pulvinar metus. Nullam arcu eros, iaculis vitae lectus eu, porttitor facilisis massa.</p>
<p>Duis pellentesque tellus semper quam convallis, non condimentum odio auctor. Maecenas vitae blandit libero. Vivamus facilisis felis et est malesuada feugiat. Aenean quis augue ut mauris ultrices molestie. Aenean a velit elit. Sed sit amet viverra ex. Sed facilisis tempor placerat. In metus metus, venenatis sed nisi sit amet, posuere ultrices arcu. Integer laoreet fringilla est, quis interdum sem imperdiet ut. Sed sagittis fringilla orci non ornare. Donec viverra leo ut justo feugiat eleifend. Fusce dapibus vel ligula non convallis. Cras sed suscipit nisl, in varius diam. Vestibulum imperdiet blandit imperdiet. Proin accumsan augue quis turpis viverra pharetra.</p>
<p>Phasellus elementum nibh ac efficitur commodo. Donec vestibulum velit felis, eget mollis libero maximus ut. Proin semper purus nec libero volutpat, non feugiat nisl pellentesque. Nam fringilla lacinia dui, at feugiat odio vulputate id. Aenean condimentum congue justo eu interdum. Pellentesque at quam felis. Nulla ac elementum orci, in tristique ante.</p>
<p>Quisque in nisi consectetur, egestas urna id, iaculis ligula. Etiam varius lacinia velit, sit amet convallis sapien dignissim a. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur ut blandit diam. Nunc vehicula, urna sed iaculis volutpat, nisl ipsum tempus tellus, in tincidunt nulla ipsum sed purus. Interdum et malesuada fames ac ante ipsum primis in faucibus. Suspendisse non tortor at mi blandit varius id at tellus. Maecenas congue et orci ut pharetra.</p>
<p>Proin rutrum laoreet velit, a finibus lorem interdum non. Proin pharetra sagittis commodo. Duis in diam in nunc accumsan dictum vitae vel orci. In vulputate nunc dolor, nec venenatis orci ultrices at. Sed convallis ipsum pharetra tellus sagittis, a malesuada magna laoreet. Duis dapibus fermentum viverra. Maecenas varius magna sit amet lacus accumsan viverra. Nullam erat massa, vulputate ut urna et, aliquam mollis sem. Maecenas lorem diam, suscipit gravida arcu sit amet, porta vulputate tellus. Proin varius placerat ligula. Phasellus et lacus sapien. Donec feugiat ut neque id rutrum. Maecenas luctus turpis enim, in cursus ipsum egestas eu. Aenean ornare dui mauris, quis consequat orci hendrerit at. In erat purus, vulputate eget lectus id, gravida semper elit.</p>
<p>Vestibulum tincidunt pellentesque velit, vitae aliquam neque convallis a. Curabitur sit amet lectus sit amet mi pharetra interdum vitae non enim. Sed molestie euismod metus sit amet ullamcorper. Nam porta consectetur laoreet. Nunc varius ultrices vestibulum. Morbi dignissim leo libero, eget rhoncus leo semper a. Suspendisse eget varius diam. Curabitur facilisis finibus erat, sit amet placerat neque faucibus a. Aenean id nisi lacus. Nunc vehicula, justo id pretium gravida, dui dolor posuere augue, id egestas enim tortor quis dui. Donec dictum aliquet arcu, in egestas tellus ornare et. Morbi feugiat vehicula lectus quis maximus. Mauris dictum, sapien et fringilla convallis, dui urna tristique nisl, id fermentum purus dui sed est. Pellentesque faucibus pretium pharetra.</p>
<p>Maecenas quam neque, faucibus non dapibus non, porttitor et diam. Fusce quis eleifend purus. Duis condimentum vitae tortor vel iaculis. Nulla porta ultricies semper. Phasellus sit amet neque lacus. Suspendisse egestas massa at imperdiet maximus. Nam ante justo, condimentum in malesuada et, cursus eu purus.
</main>
ASIDE: Here is the Fiddle I was working on before you supplied your CSS.
Mabe somthing like this?
section {
background:#ddd;
height:1000px;
}
header {
width:100%;
height:60px;
}
.logo {
position:relative;
float:left;
width:100px;
height:60px;
background:red;
opacity:.3;
}
nav {
position:relative;
float:left;
width: calc( 100% - 100px ); /* 100% - logo-width */
height:60px;
background:#eee;
}
}
<section>
<header>
<div class="logo">Logo</div>
<nav>
<div>Rest of nav</div>
</nav>
</header>
</section>

hiding a footer below the main body using zindex

I am trying to hide a footer behind the main body that will show up when the main bodyy is scrolled above the footer.
the problem I have is that when I set teh footers z-index to a negative, it hides the footer nicveley but the links are unclickable
so I have tried to raise the main content z-index up and set the footer z-index to zero but then the footer is visable above the main content
heres some code
#main {
z-index:4;
padding:0px 0px 450px;
border-bottom:1px solid red;
}
#mainBg {
background:red;
}
footer {
padding: 50px 0;
bottom:0;
position:fixed;
z-index:0;
width:100%;
}
<body>
<div id="main">
<div id="mainBg">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean posuere, justo eget auctor sagittis, sapien odio rutrum quam, eu feugiat sem lacus lacinia quam. Morbi malesuada porta sapien eu ornare. Pellentesque vel nibh auctor lectus malesuada porttitor. Cras et dui quam. Nunc sollicitudin mi condimentum iaculis rhoncus. Sed tristique mollis sagittis. Fusce bibendum congue augue, nec scelerisque velit egestas viverra. Phasellus a rhoncus leo. In tempor sagittis rhoncus. Ut a risus viverra, ornare lacus non, ornare nisi. Curabitur luctus mauris orci, quis condimentum lacus facilisis a. Nullam cursus, nisl id sagittis feugiat, risus ipsum consequat felis, id luctus erat felis eget velit. Pellentesque vehicula risus at nibh faucibus, in venenatis tellus aliquam. Pellentesque dolor libero, vehicula et magna efficitur, sollicitudin pharetra ipsum. Curabitur tempus et sapien eu facilisis. Phasellus ipsum diam, pellentesque sed felis non, euismod malesuada orci. Nulla rutrum eros in dignissim pretium. Donec et orci leo. Nullam quis luctus massa. Donec rhoncus lacinia cursus. Fusce sed imperdiet ligula. Maecenas fermentum sed velit eget aliquam. Nullam vel ipsum erat. Mauris ultricies feugiat metus, sed scelerisque arcu imperdiet eget. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vestibulum porta felis at pharetra maximus. Curabitur efficitur turpis non interdum finibus. Mauris ut consectetur nisl, eget condimentum sem. Integer rutrum, augue vitae faucibus rutrum, metus tellus volutpat quam, in fermentum arcu risus quis libero. Curabitur faucibus pulvinar tempus. Aenean eu ex ullamcorper, ullamcorper enim a, convallis elit. Cras id facilisis turpis. Nunc urna libero, rhoncus eget blandit id, sollicitudin vitae nibh. Nunc sed nibh faucibus, consequat nibh quis, commodo neque. Nullam porttitor est a dui bibendum, non scelerisque nulla imperdiet. Mauris ut suscipit magna. Aenean magna orci, aliquam nec fringilla ut, blandit ac augue. Aliquam aliquet, metus ut congue varius, massa erat dapibus lectus, sit amet blandit libero tortor eget nibh. Nam tincidunt tristique elementum. Vivamus sagittis nec tellus ut sollicitudin. Vivamus nec lobortis nisl. Proin placerat, orci sed interdum efficitur, libero enim tempor nisl, quis iaculis nisl ligula non dolor. Mauris in felis at justo varius posuere. Nam ac lorem ex. Aliquam convallis ac metus ac condimentum. Aliquam ac ex a lacus placerat rutrum sed a eros. Nunc et tellus at enim rutrum volutpat. Praesent egestas ligula at diam convallis, eget posuere diam vulputate. Cras tempus non nibh eu hendrerit. Aenean erat odio, posuere mattis neque nec, gravida tristique velit. Aenean condimentum massa sed dictum viverra. Sed bibendum velit ac felis rhoncus volutpat feugiat ut tellus. Praesent mollis malesuada sapien vel feugiat. Vivamus scelerisque, lacus nec blandit sodales, nibh velit volutpat augue, quis vehicula urna justo ac felis. Aliquam erat volutpat. Sed non purus eget erat vulputate varius ac vel urna. Phasellus ac tempor mauris. Morbi ut ligula tristique, fringilla metus quis, pharetra mauris. Nunc non fringilla dui, non varius sem. Quisque ullamcorper, est vitae rhoncus porttitor, sapien urna semper orci, non aliquam lacus ipsum non sem. Phasellus volutpat nibh nulla, eu auctor lacus suscipit eget.</div>
</div>
<footer>footer footer
<br/>
<br/>footer footer
<br/>
Google link
<br/>footer footer
<br/>
<br/>footer footer
<br/>
<br/>
</footer>
</body>
I have added a couple of links to js fiddles to show this in action
JSFIDDLE - negative z-index
JSFIDDLE - positive zindex
Add position:relative to main, and then add either padding to the bottom of body or height. You are still under main which is causing this (as stated in comments).
Padding Bottom Solution:
#main {
z-index:4;
padding:0px 0px 450px;
border-bottom:1px solid red;
position: relative;
}
#mainBg {
background:red;
}
footer {
padding: 50px 0;
bottom:0;
position:fixed;
z-index:3;
width:100%;
}
body {
padding-bottom:200px;
}
<body>
<div id="main">
<div id="mainBg">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean posuere, justo eget auctor sagittis, sapien odio rutrum quam, eu feugiat sem lacus lacinia quam. Morbi malesuada porta sapien eu ornare. Pellentesque vel nibh auctor lectus malesuada porttitor. Cras et dui quam. Nunc sollicitudin mi condimentum iaculis rhoncus. Sed tristique mollis sagittis. Fusce bibendum congue augue, nec scelerisque velit egestas viverra. Phasellus a rhoncus leo. In tempor sagittis rhoncus. Ut a risus viverra, ornare lacus non, ornare nisi. Curabitur luctus mauris orci, quis condimentum lacus facilisis a. Nullam cursus, nisl id sagittis feugiat, risus ipsum consequat felis, id luctus erat felis eget velit. Pellentesque vehicula risus at nibh faucibus, in venenatis tellus aliquam. Pellentesque dolor libero, vehicula et magna efficitur, sollicitudin pharetra ipsum. Curabitur tempus et sapien eu facilisis. Phasellus ipsum diam, pellentesque sed felis non, euismod malesuada orci. Nulla rutrum eros in dignissim pretium. Donec et orci leo. Nullam quis luctus massa. Donec rhoncus lacinia cursus. Fusce sed imperdiet ligula. Maecenas fermentum sed velit eget aliquam. Nullam vel ipsum erat. Mauris ultricies feugiat metus, sed scelerisque arcu imperdiet eget. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vestibulum porta felis at pharetra maximus. Curabitur efficitur turpis non interdum finibus. Mauris ut consectetur nisl, eget condimentum sem. Integer rutrum, augue vitae faucibus rutrum, metus tellus volutpat quam, in fermentum arcu risus quis libero. Curabitur faucibus pulvinar tempus. Aenean eu ex ullamcorper, ullamcorper enim a, convallis elit. Cras id facilisis turpis. Nunc urna libero, rhoncus eget blandit id, sollicitudin vitae nibh. Nunc sed nibh faucibus, consequat nibh quis, commodo neque. Nullam porttitor est a dui bibendum, non scelerisque nulla imperdiet. Mauris ut suscipit magna. Aenean magna orci, aliquam nec fringilla ut, blandit ac augue. Aliquam aliquet, metus ut congue varius, massa erat dapibus lectus, sit amet blandit libero tortor eget nibh. Nam tincidunt tristique elementum. Vivamus sagittis nec tellus ut sollicitudin. Vivamus nec lobortis nisl. Proin placerat, orci sed interdum efficitur, libero enim tempor nisl, quis iaculis nisl ligula non dolor. Mauris in felis at justo varius posuere. Nam ac lorem ex. Aliquam convallis ac metus ac condimentum. Aliquam ac ex a lacus placerat rutrum sed a eros. Nunc et tellus at enim rutrum volutpat. Praesent egestas ligula at diam convallis, eget posuere diam vulputate. Cras tempus non nibh eu hendrerit. Aenean erat odio, posuere mattis neque nec, gravida tristique velit. Aenean condimentum massa sed dictum viverra. Sed bibendum velit ac felis rhoncus volutpat feugiat ut tellus. Praesent mollis malesuada sapien vel feugiat. Vivamus scelerisque, lacus nec blandit sodales, nibh velit volutpat augue, quis vehicula urna justo ac felis. Aliquam erat volutpat. Sed non purus eget erat vulputate varius ac vel urna. Phasellus ac tempor mauris. Morbi ut ligula tristique, fringilla metus quis, pharetra mauris. Nunc non fringilla dui, non varius sem. Quisque ullamcorper, est vitae rhoncus porttitor, sapien urna semper orci, non aliquam lacus ipsum non sem. Phasellus volutpat nibh nulla, eu auctor lacus suscipit eget.</div>
</div>
<footer>footer footer
<br/>
<br/>footer footer
<br/>
Google link
<br/>footer footer
<br/>
<br/>footer footer
<br/>
<br/>
</footer>
</body>
Height Solution:
#main {
z-index:4;
padding:0px 0px 450px;
border-bottom:1px solid red;
position: relative;
}
#mainBg {
background:red;
}
footer {
padding: 50px 0;
bottom:0;
position:fixed;
z-index:3;
width:100%;
}
body {
height:1500px;
}
<body>
<div id="main">
<div id="mainBg">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean posuere, justo eget auctor sagittis, sapien odio rutrum quam, eu feugiat sem lacus lacinia quam. Morbi malesuada porta sapien eu ornare. Pellentesque vel nibh auctor lectus malesuada porttitor. Cras et dui quam. Nunc sollicitudin mi condimentum iaculis rhoncus. Sed tristique mollis sagittis. Fusce bibendum congue augue, nec scelerisque velit egestas viverra. Phasellus a rhoncus leo. In tempor sagittis rhoncus. Ut a risus viverra, ornare lacus non, ornare nisi. Curabitur luctus mauris orci, quis condimentum lacus facilisis a. Nullam cursus, nisl id sagittis feugiat, risus ipsum consequat felis, id luctus erat felis eget velit. Pellentesque vehicula risus at nibh faucibus, in venenatis tellus aliquam. Pellentesque dolor libero, vehicula et magna efficitur, sollicitudin pharetra ipsum. Curabitur tempus et sapien eu facilisis. Phasellus ipsum diam, pellentesque sed felis non, euismod malesuada orci. Nulla rutrum eros in dignissim pretium. Donec et orci leo. Nullam quis luctus massa. Donec rhoncus lacinia cursus. Fusce sed imperdiet ligula. Maecenas fermentum sed velit eget aliquam. Nullam vel ipsum erat. Mauris ultricies feugiat metus, sed scelerisque arcu imperdiet eget. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vestibulum porta felis at pharetra maximus. Curabitur efficitur turpis non interdum finibus. Mauris ut consectetur nisl, eget condimentum sem. Integer rutrum, augue vitae faucibus rutrum, metus tellus volutpat quam, in fermentum arcu risus quis libero. Curabitur faucibus pulvinar tempus. Aenean eu ex ullamcorper, ullamcorper enim a, convallis elit. Cras id facilisis turpis. Nunc urna libero, rhoncus eget blandit id, sollicitudin vitae nibh. Nunc sed nibh faucibus, consequat nibh quis, commodo neque. Nullam porttitor est a dui bibendum, non scelerisque nulla imperdiet. Mauris ut suscipit magna. Aenean magna orci, aliquam nec fringilla ut, blandit ac augue. Aliquam aliquet, metus ut congue varius, massa erat dapibus lectus, sit amet blandit libero tortor eget nibh. Nam tincidunt tristique elementum. Vivamus sagittis nec tellus ut sollicitudin. Vivamus nec lobortis nisl. Proin placerat, orci sed interdum efficitur, libero enim tempor nisl, quis iaculis nisl ligula non dolor. Mauris in felis at justo varius posuere. Nam ac lorem ex. Aliquam convallis ac metus ac condimentum. Aliquam ac ex a lacus placerat rutrum sed a eros. Nunc et tellus at enim rutrum volutpat. Praesent egestas ligula at diam convallis, eget posuere diam vulputate. Cras tempus non nibh eu hendrerit. Aenean erat odio, posuere mattis neque nec, gravida tristique velit. Aenean condimentum massa sed dictum viverra. Sed bibendum velit ac felis rhoncus volutpat feugiat ut tellus. Praesent mollis malesuada sapien vel feugiat. Vivamus scelerisque, lacus nec blandit sodales, nibh velit volutpat augue, quis vehicula urna justo ac felis. Aliquam erat volutpat. Sed non purus eget erat vulputate varius ac vel urna. Phasellus ac tempor mauris. Morbi ut ligula tristique, fringilla metus quis, pharetra mauris. Nunc non fringilla dui, non varius sem. Quisque ullamcorper, est vitae rhoncus porttitor, sapien urna semper orci, non aliquam lacus ipsum non sem. Phasellus volutpat nibh nulla, eu auctor lacus suscipit eget.</div>
</div>
<footer>footer footer
<br/>
<br/>footer footer
<br/>
Google link
<br/>footer footer
<br/>
<br/>footer footer
<br/>
<br/>
</footer>
</body>
Your #main includes 450px padding botton so it is just over the footer.
Try to add 450px padding bottom to the body and remove it from #main.

how to make middle div inside scrollable div stay on top when scrolling

I have a header (div), menu (div) & content (div) inside a container (scrollable div).
I'd like to set menu to stay at top of container only when scrolling down inside of the container (scrollable div)!!!.
Here is my code:
<div id="wrapper">
<div id="LangBar"/>
<div id="LeftFloat"/>
<div class="main" id="sb">**this is the CONTAINER (SCROLLABLE DIV)**
<div id="header">**this is the HEADER (DIV)**</div>
<div id="menu">**this is the MENU (DIV)**</div>
<div class="section">**this is the CONTENT (DIV)**</div>
<div id="footer"/>
</div>
<div id="RightFloat"/>
</div>
HERE IS MY JSFIDDLE
Please see my code: http://jsfiddle.net/aisinvon/4pEBm/5
Because you need menu stick only when scroll down, we can use jquery to do it.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS Bin</title>
<style type="text/css">
.section {
height:1000px;
background: #ccc;
}
.main{
height: 500px;
overflow: scroll;
}
.fixed {
position:fixed;
top:0;
left:0;
}
</style>
</head>
<body>
<div id="wrapper">
<div id="LangBar" />
<div id="LeftFloat" />
<div class="main" id="sb">**this is the CONTAINER (SCROLLABLE DIV)**
<div id="header">**this is the HEADER (DIV)**</div>
<div id="menu">**this is the MENU (DIV)**</div>
<div class="section">**this is the CONTENT (DIV)**</div>
<div id="footer" />
</div>
<div id="RightFloat" />
<script type="text/javascript" src="http://cdn.staticfile.org/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
var $menu = $('#menu'),
menuTop = $menu.offset().top;
$('#sb').scroll(function() {
var scrollTop = $('#sb').scrollTop();
if (scrollTop > menuTop) {
$menu.addClass('fixed');
} else {
$menu.removeClass('fixed');
}
});
});
</script>
</div>
</body>
</html>
Absolute position the 3 elements and set overflow:auto for the middle one like in this fiddle. http://jsfiddle.net/majinnaibu/p47mU/
CSS
html, body, #wrapper{
height: 100%;
width: 100%;
padding: 0px;
margin: 0px;
}
#wrapper{
background: #0f0;
}
#header{
position: absolute;
top: 0px;
left: 0px;
right: 0px;
height: 50px;
background: rgba(255,0,0,0.5);
}
#footer{
position: absolute;
height: 50px;
bottom: 0px;
left: 0px;
right: 0px;
background: rgba(0,0,255,0.5);
}
#content{
position: absolute;
overflow: auto;
top: 50px;
bottom: 50px;
}
HTML
<div id="wrapper">
<div id="header">
Header Content
</div>
<div id="content">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus convallis neque ut turpis volutpat pretium. Donec luctus vel lectus eget condimentum. Aliquam interdum dignissim neque, eu pulvinar erat porta sit amet. Nam urna lectus, rhoncus eu ante ac, lobortis pretium velit. Phasellus vestibulum quam in elit dapibus imperdiet. Integer lobortis nec dolor sit amet accumsan. Sed nec faucibus mi, scelerisque mollis erat. Vivamus eu sapien ornare, posuere mi nec, mollis metus. Aenean convallis est ipsum, eget dignissim leo tincidunt eget. Praesent malesuada dolor vel lacus malesuada, at fermentum nunc eleifend. Integer est metus, dapibus sit amet enim in, posuere aliquam lorem. Vivamus convallis neque at odio convallis, ut sodales erat ultricies. Quisque et enim ac enim imperdiet consectetur. Etiam eget lectus nec lorem congue dictum. Nulla facilisi.
Quisque ligula dolor, pharetra et ante nec, blandit interdum risus. Mauris ultrices malesuada sem, a luctus diam auctor in. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Quisque purus magna, laoreet id malesuada non, blandit sed diam. Vivamus blandit faucibus mattis. Aliquam semper faucibus erat eu mollis. Donec eleifend leo lacus, sed aliquet nisi consequat ac.
Morbi dictum pharetra feugiat. In nec turpis dolor. Mauris consectetur hendrerit scelerisque. Aenean eleifend dui ac augue varius porttitor at a leo. Fusce semper mollis vulputate. Praesent libero enim, congue eget tellus vitae, mattis tempor turpis. Fusce cursus ligula quam, eget iaculis leo ullamcorper eget. Nam laoreet quam pulvinar, egestas justo id, cursus eros. Pellentesque congue porttitor pretium.
Suspendisse mattis sapien sed magna tempus ultrices. Nullam porta sagittis nulla ut venenatis. Nulla faucibus elementum elementum. Integer sed consectetur elit, quis elementum dolor. Donec dapibus aliquam orci eu pretium. Aliquam vel fermentum nunc. Duis augue mauris, semper at neque ac, aliquet mattis augue. Suspendisse pulvinar vehicula semper. Aenean purus orci, pharetra vel sollicitudin quis, tincidunt ac dolor.
Duis nibh tellus, iaculis vel venenatis sed, condimentum ac est. Sed ac imperdiet neque. Phasellus et euismod lorem. Nunc hendrerit orci mattis, tincidunt quam vel, varius mauris. Phasellus venenatis malesuada congue. Nam ut nunc eros. Nulla facilisi. Pellentesque facilisis massa a tortor imperdiet ullamcorper eget convallis nisl. Suspendisse potenti. Nam a congue est. Praesent id ante dui. In hac habitasse platea dictumst. Sed eget metus sit amet arcu pellentesque molestie ac eget mauris. Nullam adipiscing odio at interdum porttitor. Proin magna mi, facilisis ac rhoncus ac, gravida ut lacus.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus convallis neque ut turpis volutpat pretium. Donec luctus vel lectus eget condimentum. Aliquam interdum dignissim neque, eu pulvinar erat porta sit amet. Nam urna lectus, rhoncus eu ante ac, lobortis pretium velit. Phasellus vestibulum quam in elit dapibus imperdiet. Integer lobortis nec dolor sit amet accumsan. Sed nec faucibus mi, scelerisque mollis erat. Vivamus eu sapien ornare, posuere mi nec, mollis metus. Aenean convallis est ipsum, eget dignissim leo tincidunt eget. Praesent malesuada dolor vel lacus malesuada, at fermentum nunc eleifend. Integer est metus, dapibus sit amet enim in, posuere aliquam lorem. Vivamus convallis neque at odio convallis, ut sodales erat ultricies. Quisque et enim ac enim imperdiet consectetur. Etiam eget lectus nec lorem congue dictum. Nulla facilisi.
Quisque ligula dolor, pharetra et ante nec, blandit interdum risus. Mauris ultrices malesuada sem, a luctus diam auctor in. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Quisque purus magna, laoreet id malesuada non, blandit sed diam. Vivamus blandit faucibus mattis. Aliquam semper faucibus erat eu mollis. Donec eleifend leo lacus, sed aliquet nisi consequat ac.
Morbi dictum pharetra feugiat. In nec turpis dolor. Mauris consectetur hendrerit scelerisque. Aenean eleifend dui ac augue varius porttitor at a leo. Fusce semper mollis vulputate. Praesent libero enim, congue eget tellus vitae, mattis tempor turpis. Fusce cursus ligula quam, eget iaculis leo ullamcorper eget. Nam laoreet quam pulvinar, egestas justo id, cursus eros. Pellentesque congue porttitor pretium.
Suspendisse mattis sapien sed magna tempus ultrices. Nullam porta sagittis nulla ut venenatis. Nulla faucibus elementum elementum. Integer sed consectetur elit, quis elementum dolor. Donec dapibus aliquam orci eu pretium. Aliquam vel fermentum nunc. Duis augue mauris, semper at neque ac, aliquet mattis augue. Suspendisse pulvinar vehicula semper. Aenean purus orci, pharetra vel sollicitudin quis, tincidunt ac dolor.
Duis nibh tellus, iaculis vel venenatis sed, condimentum ac est. Sed ac imperdiet neque. Phasellus et euismod lorem. Nunc hendrerit orci mattis, tincidunt quam vel, varius mauris. Phasellus venenatis malesuada congue. Nam ut nunc eros. Nulla facilisi. Pellentesque facilisis massa a tortor imperdiet ullamcorper eget convallis nisl. Suspendisse potenti. Nam a congue est. Praesent id ante dui. In hac habitasse platea dictumst. Sed eget metus sit amet arcu pellentesque molestie ac eget mauris. Nullam adipiscing odio at interdum porttitor. Proin magna mi, facilisis ac rhoncus ac, gravida ut lacus.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus convallis neque ut turpis volutpat pretium. Donec luctus vel lectus eget condimentum. Aliquam interdum dignissim neque, eu pulvinar erat porta sit amet. Nam urna lectus, rhoncus eu ante ac, lobortis pretium velit. Phasellus vestibulum quam in elit dapibus imperdiet. Integer lobortis nec dolor sit amet accumsan. Sed nec faucibus mi, scelerisque mollis erat. Vivamus eu sapien ornare, posuere mi nec, mollis metus. Aenean convallis est ipsum, eget dignissim leo tincidunt eget. Praesent malesuada dolor vel lacus malesuada, at fermentum nunc eleifend. Integer est metus, dapibus sit amet enim in, posuere aliquam lorem. Vivamus convallis neque at odio convallis, ut sodales erat ultricies. Quisque et enim ac enim imperdiet consectetur. Etiam eget lectus nec lorem congue dictum. Nulla facilisi.
Quisque ligula dolor, pharetra et ante nec, blandit interdum risus. Mauris ultrices malesuada sem, a luctus diam auctor in. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Quisque purus magna, laoreet id malesuada non, blandit sed diam. Vivamus blandit faucibus mattis. Aliquam semper faucibus erat eu mollis. Donec eleifend leo lacus, sed aliquet nisi consequat ac.
Morbi dictum pharetra feugiat. In nec turpis dolor. Mauris consectetur hendrerit scelerisque. Aenean eleifend dui ac augue varius porttitor at a leo. Fusce semper mollis vulputate. Praesent libero enim, congue eget tellus vitae, mattis tempor turpis. Fusce cursus ligula quam, eget iaculis leo ullamcorper eget. Nam laoreet quam pulvinar, egestas justo id, cursus eros. Pellentesque congue porttitor pretium.
Suspendisse mattis sapien sed magna tempus ultrices. Nullam porta sagittis nulla ut venenatis. Nulla faucibus elementum elementum. Integer sed consectetur elit, quis elementum dolor. Donec dapibus aliquam orci eu pretium. Aliquam vel fermentum nunc. Duis augue mauris, semper at neque ac, aliquet mattis augue. Suspendisse pulvinar vehicula semper. Aenean purus orci, pharetra vel sollicitudin quis, tincidunt ac dolor.
Duis nibh tellus, iaculis vel venenatis sed, condimentum ac est. Sed ac imperdiet neque. Phasellus et euismod lorem. Nunc hendrerit orci mattis, tincidunt quam vel, varius mauris. Phasellus venenatis malesuada congue. Nam ut nunc eros. Nulla facilisi. Pellentesque facilisis massa a tortor imperdiet ullamcorper eget convallis nisl. Suspendisse potenti. Nam a congue est. Praesent id ante dui. In hac habitasse platea dictumst. Sed eget metus sit amet arcu pellentesque molestie ac eget mauris. Nullam adipiscing odio at interdum porttitor. Proin magna mi, facilisis ac rhoncus ac, gravida ut lacus.
</div>
<div id="footer">
Footer Content
</div>
</div>