JSFiddle - React, Tailwind, and code Playground
HTML
<!DOCTYPE html>
<html>
<body>
<div class="container">
<div class="header">
<h1>Header</h1>
</div>
<div class="left-col">
<p>Sample text Sample textSample text </p>
<p>
Sample text Sample textSample text
</p>
<div>
<ul>
<li>list 1</li>
<li>list 1</li>
<li>list 1</li>
<li>list 1</li>
<li>list 1</li>
<li>list 1</li>
</ul>
</div>
<div>
<p>
Sample text Sample textSample text
</p>
<div>
<div>
<div class="sticky-2">
<h1>
Sample text Sample textSample text
</h1>
</div>
<h1>
test
</h1>
<h1>
test
</h1>
<h1>
test
</h1>
</div>
</div>
<ul>
<li>list 1</li>
<li>list 1</li>
<li>list 1</li>
<li>list 1</li>
<li>list 1</li>
<li>list 1</li>
</ul>
</div>
</div>
<div class="right-col">
<div class="sticky-1">
<h3>
Sticky 1
</h3>
</div>
</div>
<div class="footer">
<h1>Footer</h1>
</div>
</div>
</body>
</html>
CSS
.container{
width:980px;
margin:0 auto;
display:flex;
border:1px solid red;
flex-wrap: wrap;
padding:20px;
}
.header{
border-bottom: 2px solid #ccc;
position:sticky;
top:0;
background:#fff;
}
.header,
.footer{
flex-basis:100%;
}
.left-col{
flex-basis:65%;
}
.right-col{
flex-basis:30%;
min-height:900px
}
.sticky-1{
position:sticky;
top: 90px;
height:200px;
width:90px;
background:#2c2c2c;
padding:20px;
}
.sticky-1 h3{
color:#FFF;
}
.sticky-2{
position:sticky;
top: 90px;
height:200px;
width:100%;
background:red;
}
.section{
width:100%;
position:static;
}
.overflowV{
overflow:visible;
}
.p-static{
position: static;
padding: 100px 0;
height:1000px;
}