Div position:fixed scrolling content mask
Fake a mask effect and position:fixed of overflow:hidden DIVs by offsetting the content.
by xylab
HTML
<div class="site-body">
<section id="section1">
<div class="section-text1">
Section 1
<p>Corrupti molestiae ratione totam voluptate ducimus ab qui fugit perferendis quos! Rem ipsa nostrum minus reiciendis debitis inventore nihil quod assumenda magni deserunt ratione quibusdam eius minima sequi doloribus nobis</p>
</div>
</section>
<section id="section2">
<div class="section-text2">
Section 2
<p>Nihil enim reiciendis dolores quos hic consequuntur voluptate a tempore eveniet possimus non mollitia temporibus ipsam! Culpa perspiciatis nisi itaque officiis eligendi expedita minima repellendus nostrum fugit ab qui recusandae.</p>
</div>
</section>
<section id="section3">
<div class="section-text3">
Section 3
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Recusandae modi natus harum nostrum fuga ab officia pariatur quaerat minima quasi. Praesentium ex sunt error. Inventore voluptatum praesentium eius neque modi.</p>
</div>
</section>
</div>
CSS
{
height:100%;
}
body,html, .site-body, section{
height:100%;
}
section{
padding:20px;
overflow:hidden;
}
section div{
font-size:120px;
}
section div p{
font-size: 20px;
}
.site-body #section1 {
background: url(http://ianlunn.co.uk/plugins/jquery-parallax/images/firstBG.jpg) no-repeat fixed;
background-position: center center;
color:white;
}
.page-wrapper .site-body #section1 .section-text1 {
position: fixed;
width: 300px;
margin: 0 auto;
padding-top: 100px;
background: #000000;
}
.site-body #section2 {
background: url(http://ianlunn.co.uk/plugins/jquery-parallax/images/secondBG.jpg) no-repeat fixed;
background-position: center center;
z-index: 3000;
}
.page-wrapper .site-body #section2 .section-text2 {
position: fixed;
width: 300px;
margin: 0 auto;
padding-top: 100px;
background: #000000;
}
.site-body #section3 {
background: url(http://ianlunn.co.uk/plugins/jquery-parallax/images/thirdBG.jpg) no-repeat fixed;
background-position: center center;
}
.page-wrapper .site-body #section3 .section-text3 {
position: fixed;
width: 300px;
margin: 0 auto;
padding-top: 100px;
background: #000000;
}
JavaScript
$(window).scroll(function(){
$("section div").each(function(){
$(this).css('margin-top',$(window).scrollTop()-$(this).parent().position().top);
console.log();
});
});