Faire en sorte que le conteneur de grille remplisse des colonnes au lieu de lignes
P粉551084295
2023-08-27 20:59:46
<p>Je veux que ma grille se remplisse verticalement comme ceci : </p>
<pre class="brush:php;toolbar:false;">1 4 7
2 5 8
3 6 9
... nombre arbitraire de lignes supplémentaires.</pre>
<p>Au lieu de cela, il se remplira horizontalement comme ceci : </p>
<pre class="brush:php;toolbar:false;">1 2 3
4 5 6
7 8 9≪/pré>
<p><strong>Je souhaite spécifier le nombre de colonnes dans la grille, pas le nombre de lignes. </strong></p>
<p>Voici à quoi ressemble mon div en utilisant le style CSS en ligne : </p>
<p><br /></p>
<pre class="snippet-code-html lang-html Prettyprint-override"><code><div style="display:grid; grid-template-columns:1fr 1fr 1fr;">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
<div>9</div>
</div></code></pre>
<p><br /></p>
<p>Il est important que la grille ait une largeur de 3 colonnes, mais je souhaite que les éléments remplissent des colonnes et non des lignes. Est-ce possible dans la grille CSS ? J'ai lu ceci https://css-tricks.com/snippets/css/complete-guide-grid/ mais je ne vois rien sur la commande. </p>
<p>CSS Flexbox a <code>flex-direction</code>, CSS Grid n'a-t-il pas une propriété similaire ? </p>
Pour une grille fluide verticalement qui crée de nouvelles colonnes selon vos besoins et n'a pas de lignes définies, pensez à utiliser Mise en page multi-colonnes CSS (Exemple). CSS Grid Layout (au moins tel qu'il est actuellement implémenté - Niveau 1) ne peut pas effectuer cette tâche. La question est la suivante :
Dans la disposition en grille CSS, propriété
grid-auto-flow
和grid-template-rows
/grid-template-columns.
Plus précisément, les éléments de la grille peuvent s'écouler correctement dans le sens horizontal si
grid-template-columns sont définis, créant automatiquement de nouvelles lignes comme nécessaire. Ce concept est illustré dans le code de la question.grid-auto-flow: row
(默认设置)和grid-template-columns
grid-auto-flow: row (la valeur par défaut) etgrid-template-rows
Cependant, après être passé àgrid-auto-flow: row
和grid-template-rows
不会自动创建列。必须定义grid-template-columns
(因此,与grid-auto-flow
L'utilisation degrid-template-rows ne crée pas automatiquement de colonnes.
grid-auto-flow:column
和grid-template-rows
La situation inverse a également le même comportement.grid-template-columns
grid-template-rows
Référence de spécification : 7.7. Placement automatique :
grid-auto-flow
attribut