Ce que je veux atteindre:Comment définir la largeur maximale d'une colonne dans la disposition de la grille CSS?
En utilisant CSS Grid Layout, d'avoir une page avec une colonne de droite dont la taille est dérivé de son contenu, mais seulement jusqu'à 20% de la largeur de la fenêtre.
Comment je pensais que ça marcherait:
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>
Il semble bien, mais quand je supprimer le contenu de la deuxième div
, la colonne de gauche ne tombe pas:
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>
Ma question:
J'avais l'impression que depuis minmax()
(...) définit une plage de taille supérieure ou égale à min et moins de ou égal à max.
cela signifierait que dans mon cas, la largeur est définie à partir de auto
(= 0
div
lorsque le vide est) à 20%
. Il reste cependant à 20%. Pourquoi est-ce vrai?
* Je voudrais avoir une page avec une colonne de droite * il y a beaucoup d'autres façons d'y parvenir, est-il une raison particulière pour l'utilisation 'grille-template-columns' ? –
@AbhishekPandey: oui, l'application entière est basée sur CSS Grid (je vais préciser que dans la question) – WoJ
[Comment faire une colonne span pleine largeur quand une deuxième colonne n'est pas là?] (Https://stackoverflow.com/q/43301949/3597276) –