简体   繁体   English

如何使用 flex-direction: row 将项目按顺序排列在行中;

[英]how to arrange items sequentially in row using flex-direction: row ;

how do arrange these boxes sequentially in a row?如何将这些盒子按顺序排列成一排? I tried to solve this problem using flex-direction: row ;我尝试使用flex-direction: row解决这个问题; but it creates another problem because each box have different hight但它会产生另一个问题,因为每个盒子都有不同的高度

HTML HTML

 #container { width: 35%; height: 80vh; border: 1px solid black; display: flex; flex-flow: column wrap; } #container > div { width: 5rem; border: 1px solid black; margin: 3px; display: inline-block; flex-grow: 1; }
 <div id="container"> <div style='height: 10rem'>1</div> <div style='height: 6rem'>2</div> <div style='height: 5rem'>3</div> <div style='height: 9rem'>4</div> <div style='height: 3rem'>5</div> <div style='height: 5rem'>6</div> <div style='height: 2rem'>7</div> <div style='height: 7rem'>8</div> <div style='height: 9rem'>9</div> <div style='height: 5rem'>10</div> <div style='height: 7rem'>11</div> <div style='height: 1rem'>12</div> <div style='height: 11rem'>13</div> <div style='height: 6rem'>14</div> <div style='height: 6rem'>15</div> </div>

 #container { border: 1px solid black; display: flex; align-items: center; height: 100%; width: 100%; } #container > div { width: 5rem; border: 1px solid black; margin: 3px; }
 <div id="container"> <div style='height: 10rem'>1</div> <div style='height: 6rem'>2</div> <div style='height: 5rem'>3</div> <div style='height: 9rem'>4</div> <div style='height: 3rem'>5</div> <div style='height: 5rem'>6</div> <div style='height: 2rem'>7</div> <div style='height: 7rem'>8</div> <div style='height: 9rem'>9</div> <div style='height: 5rem'>10</div> <div style='height: 7rem'>11</div> <div style='height: 1rem'>12</div> <div style='height: 11rem'>13</div> <div style='height: 6rem'>14</div> <div style='height: 6rem'>15</div> </div>

It works fine, if you set only display: flex;它工作正常,如果你只设置 display: flex; (default value of flex-direction is row) and width: 100%; (flex-direction 的默认值为 row)和 width:100%;

 #container { width: 100%; height: 80vh; border: 1px solid black; display: flex; } #container > div { width: 5rem; border: 1px solid black; margin: 3px; display: inline-block; flex-grow: 1; }
 <div id="container"> <div style='height: 10rem'>1</div> <div style='height: 6rem'>2</div> <div style='height: 5rem'>3</div> <div style='height: 9rem'>4</div> <div style='height: 3rem'>5</div> <div style='height: 5rem'>6</div> <div style='height: 2rem'>7</div> <div style='height: 7rem'>8</div> <div style='height: 9rem'>9</div> <div style='height: 5rem'>10</div> <div style='height: 7rem'>11</div> <div style='height: 1rem'>12</div> <div style='height: 11rem'>13</div> <div style='height: 6rem'>14</div> <div style='height: 6rem'>15</div> </div>

You wrote "disolay" instead "display" in containers > div.您在容器 > div 中写了“disolay”而不是“display”。

Where did you used flex row?你在哪里使用了 flex 行? In div or container?在 div 或容器中?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM