This, this, and this question are similar but do not help.
The goal is for the children of a flexbox container to fill the space, but ensure each child shares the same width.
The problem is that rows with a different number of children cause their children to use different widths.
Box1 does not have this problem because there is only one row.
Box2 illustrates the problem because the children occupy two rows, and each row has a different number of children.
Codepen: https://codepen.io/anon/pen/BXZLPX
.box {
display: flex;
flex-grow: 1;
flex-wrap: wrap;
width: 1000px;
background: blue;
margin-bottom: 20px;
}
.child {
flex: 1 1 0;
min-width: 150px;
max-width: 100%;
height: 150px;
border: 1px solid yellow;
}
#box2 {
width: 700px;
background: red;
}
<div id="box1" class="box">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
<did id="box2" class="box">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>