在 CSS 中,float: left 属性应该是将后续元素向左移动创建一条新线。然而,在给定示例的场景中,第二个 div 继续跨越整个宽度,这违背了预期。另一方面,内容正确对齐。
此行为是浮动定位所固有的。当元素浮动时(本例中为 .inline div),内容会围绕其右侧流动。行框被缩短以容纳浮动的边距框,但包含块的宽度(由 .yellow div 建立)仍然保留。这是在 CSS 规范中指定的。
为了防止 .yellow div 与浮动元素重叠,可以添加一个值为visible以外的值的overflow属性。这会强制浏览器创建新的块格式化上下文,从而防止重叠。
以上是为什么 `float: left` 不改变 Div 的宽度?的详细内容。更多信息请关注PHP中文网其他相关文章!