考虑以下布局:
谢谢。
<div class="div">
<span class="span1">test</span>
<span class="span2">test test test test test</span>
</div>
还有CSS:
.div{
display:inline-flex;
background-color:lightgray;
}
.span1{
flex:0 0 100px;
}
.span2{
white-space:nowrap;
}
为什么div无法延伸到覆盖两个span?这种情况在Firefox和Chrome中发生。 在IE 11 / Edge中它可以正常工作(就像我期望的那样)
这是示例链接: https://jsfiddle.net/p18h0jxt/
顺便说一下:如果使用以下style,则在所有浏览器中均可正常工作:
.span1{
flex:0 0 auto;
width:100px;
}
谢谢。
nested
的引用。我找不到关于这个bug的文档,但是你的回答最接近。似乎使用inline-flex
设置为主要容器会遇到这个问题,并且子元素上不能可靠地使用flex-basis
。我会继续寻找。这个链接显示了当尝试在inline-flex
容器的子元素上使用flex-basis
时,有人遇到类似的问题。 - Dan Kreigerflex-basis
和width
,这就是为什么width
起作用的原因。 - Michael Benjamin