How to swap blocks 2 and 3 on a small screen? Without duplicating HTML tags, and the desktop layout of the blocks is not broken. No position absolute.
.wrap {
display: flex;
}
.col {
flex-grow: 1;
}
.el {
flex-grow: 1;
text-align: center;
font-size: 50px;
display: flex;
align-items: center;
justify-content: center;
}
.one {
height: 200px;
background-color: #8BAFED;
}
.two {
height: 500px;
background-color: #FEDDCC;
}
.three {
height: 400px;
background-color: #FF7100;
}
@media (max-width: 600px) {
.wrap {
flex-direction: column;
}
}
<div class="wrap">
<div class="col">
<div class="el one">1</div>
<div class="el two">2</div>
</div>
<div class="col">
<div class="el three">3</div>
</div>
</div>
There should be no empty space between block 1 and 3 on the big screen
Awesome, found display: contents