A left-and-right layout is blissfully easy with CSS grid. Something like grid-auto-rows: 1fr;
will do it — just put two elements as the children. This is how I like to roll though, making two equal columns that can shrink properly:
.halfs {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
}
Code language: CSS (css)
But Ryan Mulligan found a very interesting way to make it complicated in The Fifty-Fifty Split and Overflow. Let’s say one side needs to naturally grow with the content, but if the other side is longer, then it needs to scroll. I wouldn’t call it intuitive, but it turns out using contain: size;
on the scrolling container will do the trick.