Maison > Questions et réponses > le corps du texte
P粉8212742602023-08-28 13:45:30
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< /code>.
Plus précisément, les éléments de la grille peuvent s'écouler correctement dans le sens horizontal si grid-auto-flow: row
(默认设置)和grid-template-columns
grid-auto-flow: row (la valeur par défaut) et
#container { display: grid; grid-template-columns: 1fr 1fr 1fr; grid-auto-flow: row; }
<div id="container"> <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>
grid-template-rows
Cependant, après être passé à
#container { display: grid; grid-template-rows: 1fr 1fr 1fr; grid-auto-flow: row; }
<div id="container"> <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>
grid-auto-flow: row
和 grid-template-rows
不会自动创建列。必须定义grid-template-columns
(因此,与grid-auto-flow
L'utilisation de
grid-template-rows ne crée pas automatiquement de colonnes.
#container { display: grid; grid-template-rows: 1fr 1fr 1fr; grid-template-columns: 1fr 1fr 1fr; grid-auto-flow: row; }
<div id="container"> <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>
grid-auto-flow:column
和grid-template-rows
La situation inverse a également le même comportement.
grid-template-columns
#container { display: grid; grid-template-rows: 1fr 1fr 1fr; grid-auto-flow: column; }
<div id="container"> <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>
grid-template-rows
#container { display: grid; grid-template-columns: 1fr 1fr 1fr; grid-auto-flow: column; }
<div id="container"> <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>
#container { display: grid; grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 1fr 1fr 1fr; grid-auto-flow: column; }
<div id="container"> <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>🎜 🎜Pensez donc à adopter la 🎜solution de mise en page multi-colonnes🎜 comme mentionné ci-dessus. 🎜
Référence de spécification : 7.7. Placement automatique : grid-auto-flow
attribut