这里有一个inline-flex父示例:https://codepen.io/ahuigo/pen/yLQjxew?editors=1010
1.父级有两个子级,并且父级的显示是inline-block。
- Child 1的宽度是80 px,Child 2的宽度是40 px。
1.父项的宽度是80 px(为什么不是120 px?)
<div class="parent" style="
flex-wrap: nowrap;
display: inline-flex;
border: 1px solid;
">
<div class="child1" style="flex: 0 0 80px;">child1</div>
<div class="child2" style="
width: 40px;
height: 22px;
background: #1677ff;
">child2</div>
</div>
Q1:为什么inline-flexparent不采用子元素的全宽(120 px)?
Q2:如何让inline-flexparent获取所有子元素的宽度?
1条答案
按热度按时间vybvopom1#
因为您已经将
flex-shrink
设置为0,所以宽度为80px的child1已经填充了可用空间**,而不管它的兄弟元素(在本例中为child2)的尺寸如何。为了防止child1占用父节点的全部空间,只需删除
flex: 0 0 80px
,并将width: 80px
添加到child1
: