问题 可以溢出:隐藏影响布局?


除了参考以下内容之外,我无法解释这一点 关于JS Fiddle的例子 - 在其中,在我引入overflow:hidden属性后,最后一个BLUE框未按预期延伸到宽度的100%。

我的印象是溢出:隐藏只会影响可见性方面,而不会干扰布局。有人可以解释这个例子中发生了什么吗?

编辑:  这个问题似乎仅限于webkit浏览器(例如Chrome)


947
2018-05-25 17:02


起源

您在哪些浏览器中看到这些问题?在FF中我看起来不错 - Stanley Cup Phil
我正在看他用铬指出的东西。所以可能是webkit - corroded
附注:您不应该有多个具有相同ID的元素,例如蓝色和红色。但这并没有导致这个问题,我可以在Chrome / Lin中看到。 - newtron
我觉得你的风格有些问题。首先,你不能两次使用2个ID(使用类)。第二,我不认为你在这里清理浮子 - corroded
至少从v20开始,Chrome(/ Win)的情况似乎并非如此。 - alh84001


答案:


这是因为 overflow: hidden除了其他属性之外,还引入了一个新的 阻止格式化上下文

你可以在这篇伟大的文章中阅读有关效果的内容: 溢出的魔力:隐藏

更新: 我有 重写了你的jsFiddle 进入有效的东西(在Chrome上测试)。而不是定义 margin-left 在...上 #red 和 #blue (因为这会有不同的行为 overflow: hidden),我已经放了一个 margin-right 上 #yellow


16
2018-05-25 17:11



@ bazmegakapa- Awesome-感谢方向和重写 - Yarin