所以我一直在学习CSS作为一个初学者。最近我在探索flex box。我对柔性包装的原始知识:包装;如果沿着主轴(柔性方向)发生溢出,它会通过将项目包裹在下一行(假设柔性方向:行;)来防止溢出。我似乎不明白的是,为什么它会在横轴上留下间隙?请查看下面的代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Display Flex</title>
<link rel="stylesheet" href="display_flex.css" />
</head>
<body>
<h1>Flexbox Playground</h1>
<div id="container">
<div style="background-color: #9400d3">violet</div>
<div style="background-color: #4b0082">indigo</div>
<div style="background-color: #0000ff">blue</div>
<div style="background-color: #00ff00">green</div>
<div style="background-color: #ffff00">yellow</div>
<div style="background-color: #ff7f00">orange</div>
<div style="background-color: #ff0000">red</div>
</div>
</body>
</html>
#container {
height : 300px;
width : 80%;
background-color: azure;
margin : 10px auto ;
border : 2px solid black;
display : flex;
flex-direction: row;
flex-wrap: wrap;
}
h1 {
text-align: center;
}
#container div {
height : 90px;
width : 300px;
color : white;
text-align : center;
font-size: 1.5em;
}
因此,由于我的初始项目高度为100px,我在横轴上没有看到任何错误。但后来我试图将项目的高度从100px降低到50px,我看到横轴(垂直方向)有间隙。我没想到会这样,也不明白是什么导致了这种行为。我附上照片以供参考。第一个是当项目的高度为100px时
first_image
第二种是当高度降低到50px时。
second_image