JS не нужен. Используйте flexbox.
<div class="container">
<div class="sidebar">
<h3>Сайдбар</h3>
</div>
<div class="content">
<h3>Контент</h3>
</div>
</div>
* {
box-sizing: border-box;
}
.container {
display: flex;
}
.sidebar {
width: 20%;
padding: 10px;
background-color: skyblue;
}
.content {
width: 80%;
padding: 10px;
background-color: violet;
}
jsbin.com/murayutupe/1
P.S.: на мобильных нужно будет добавить media query правило по нужному размеру экрана и выстроить колонки по вертикали через flex-direction.
@media (max-width: 800px) {
.container {
flex-direction: column;
}
.sidebar, .content {
width: 100%;
}
}