CSS white-space:nowrap导致容器扩展以适合所有文本

Tom*_*uth 9 css

我正在经历一个非常奇怪的行为,其中一个元素带有overflow: hidden,white-space: nowrapwidth: 50%强制其包含元素展开以适应所有文本,即使它受宽度声明约束(并且实际上不可见).在容器上设置特定宽度或使用overflow: hidden也没有任何帮助.但是,将绝对值设置为所讨论元素的宽度可以解决问题,但我不想使用绝对值.

示例:http://jsbin.com/loxuz/3(黄色框应仅为灰色框的50%,但正在扩展以适合蓝色框中的所有文本,即使宽度受限制.)

有没有人在这里看到任何明显的错误 包含的元素是否应该具有宽度,并且它与我使用百分比的事实有什么关系?我不认为可能是这种情况,因为宽度应该从容器向上继承,对吧?而不是向下表示文本元素.我能找到的唯一解释white-space: nowrap是造成这种情况.删除它会使容器具有正确的宽度,但也会导致文本的包装,这是我不想要的.

有没有人知道这方面的解决方案,或有任何见解?:)

小智 8

对于字段集不遵守指定宽度的问题,一个快速解决方法是min-width: 0向元素添加 a :

IE

fieldset {
  min-width: 0;
}
Run Code Online (Sandbox Code Playgroud)

  • 为我工作...我不确定我什至想知道为什么设置*最小*宽度为0会修复明显比0宽的对象。 (2认同)