Flexbox vs CSS Grid: Axis Flipping
Flexbox vs CSS Grid: Axis Flipping by Wes Bos
HTML
<link rel="stylesheet" href="https://cdn.rawgit.com/wesbos/css-grid/master/assets/style.css">
<button onClick="flip()">Flip It</button>
<div class="flipper">
<div class="item">1</div>
<div class="item">2</div>
<div class="item">3</div>
<div class="item">4</div>
<div class="item">5</div>
<div class="item">6</div>
<div class="item">7</div>
<div class="item">8</div>
<div class="item">9</div>
<div class="item">10</div>
</div>
CSS
.flipper {
display: grid;
grid-gap: 10px;
grid-template-columns: repeat(auto-fit, minmax(50px, 1fr));
}
.flipper.flip {
grid-template-columns: 1fr;
}
Babel + JSX
function flip(e) {
const flipper = document.querySelector('.flipper');
flipper.classList.toggle('flip');
}