首頁 > web前端 > css教學 > 主體

為什麼我的浮動 Div 不調整後續 Div 的大小?

Barbara Streisand
發布: 2024-10-28 08:34:02
原創
221 人瀏覽過

Why Does My Floated Div Not Resize the Subsequent Div?

Float 不調整 Div 大小的奧秘

使用 CSS float 時,假設後續元素將左對齊而不是流到新元素上線。然而,在某些情況下,例如提供的範例,以下 div 繼續跨越整個寬度,而不是從第一個 div 的右側開始。

為了理解這種行為,我們深入研究 float 的複雜性定位。當元素浮動時(在本例中為 .inline div),其下方的內容與該元素的右側對齊。但是,由後續元素(.yellow div)建立的包含區塊的寬度仍然保留。

CSS 規範中概述了這種行為:未定位的塊框垂直流動,就好像浮動沒有一樣存在。但是,浮動旁邊的行框會縮短以容納浮動的邊距框。

因此,如果區塊級元素(如 .yellow div)具有背景,它將延伸穿過浮動元素。

解決方案

根據CSS level 2.1,具有某些屬性的元素(區塊級替換、建立新的區塊格式化上下文的元素)不得與任何浮動在相同的上下文中。在 .yellow div 中新增「visible」以外的「overflow」屬性可防止其與浮動元素重疊。

重疊何時有用

重要的是請注意,當浮動元素後面的內容足夠長以正常繼續的情況下,重疊可能會很有用。預設限制內容可能會導致其無法在浮動元素下方流動。

以上是為什麼我的浮動 Div 不調整後續 Div 的大小?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!