Да, можно использовать CSS свойство flexbox для создания двух колонок слева и одной колонки справа.
Вот пример трехколоночной адаптивной верстки с использованием flexbox:
HTML код:
```html
<div class="container">
<div class="left-column">Левая колонка</div>
<div class="center-column">Центральная колонка</div>
<div class="right-column">Правая колонка</div>
</div>
```
CSS код:
```css
.container {
display: flex;
flex-wrap: wrap;
}
.left-column {
flex-basis: 200px;
order: 1;
}
.center-column {
flex-basis: calc(100% - 400px);
order: 3;
}
.right-column {
flex-basis: 200px;
order: 2;
}
@media (max-width: 600px) {
.center-column {
flex-basis: 100%;
order: 2;
}
.right-column {
order: 3;
margin-top: 20px;
}
}
```
В данном примере, мы используем свойства `flex-basis` для задания ширины колонок и `order` для их порядка. С помощью медиа-запроса `@media (max-width: 600px)` мы меняем порядок колонок и задаем им правила для адаптивности на устройствах с шириной экрана меньше 600px.
Таким образом, при уменьшении ширины экрана до 600px, правая колонка переходит под левую, а центральная колонка находится справа. При дальнейшем уменьшении ширины экрана, центральная колонка заполняет всю ширину страницы, а левая и правая колонки появляются ниже.
Важно отметить, что данное решение не требует использования JavaScript.