Parallel Position Sticky Columns
HTML
<div class="pagecontent">
<div class="topbar"></div>
<div class="topbar-offset"></div>
<div class="threecol">
<div class="col col25">
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
</div>
<div class="col col60">
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
<div class="heightblock"></div>
</div>
<div class="col col15">
<div class="heightblock"></div>
</div>
</div>
</div>
CSS
.pagecontent {
background: #FFF;
width: 100%;
min-height: 140px;
position: relative;
}
.topbar {
width: 100%;
height:40px;
position: fixed;
background: #FFF;
z-index: 999;
top: 0;
left: 0;
}
.topbar-offset {
width: 100%;
height: 40px;
position: relative;
}
.threecol {
width: 100%;
display: flex;
justify-content: space-between;
align-items: flex-start;
}
.threecol .col {
min-height: 12px;
}
.threecol .col25 {
width: 22%;
}
.threecol .col60 {
width: 58%;
padding-left: 2%;
padding-right: 2%;
margin: 0 2%;
border-left: 1px solid rgba(33,33,33,0.2);
border-right: 1px solid rgba(33,33,33,0.2);
position: sticky;
top: 45px;
}
.threecol .col15 {
width: 13%;
position: sticky;
top: 45px;
}
.heightblock {
width: 100%;
height: 80px;
margin-bottom: 4px;
}
.heightblock:nth-of-type(odd) {
background: green;
}
.heightblock:nth-of-type(even) {
background: yellow;
}