What I want to achieve:
Using CSS Grid Layout, to have a page with a right column which size is derived from its content, but only up to 20% of the window width.
How I thought it would work:
div {
border-style: solid;
}
#container {
width: 300px;
height: 300px;
display: grid;
grid-template-columns: 1fr minmax(auto, 20%);
}
<div id="container">
<div>
some content
</div>
<div>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec cursus eu leo ac ultrices. Vivamus ornare, orci sed pretium sollicitudin
</div>
</div>
It looks good, but then when I remove the content of the second div
, the left column does not collapse:
div {
border-style: solid;
}
#container {
width: 300px;
height: 300px;
display: grid;
grid-template-columns: 1fr minmax(auto, 20%);
}
<div id="container">
<div>
some content
</div>
<div></div>
</div>
My question:
I was under the impression that since minmax()
(...) defines a size range greater than or equal to min and less than or equal to max.
it would mean that in my case the width is set from auto
(= 0
when the div
is empty) to 20%
. It however stays at 20%. Why is it so?
grid-template-columns
? – Dispread