HTML5之高度塌陷問題的解決
所謂的高度塌陷,意即當給子元素設置浮動時,其父元素高度會丟失的情況。通過實際代碼進行演示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
main {
width: 100%;
background-color: #ccc;
}
.one {
float: left;
width: 200px;
height: 200px;
background-color: skyblue;
}
.two {
float: right;
width: 200px;
height: 200px;
background-color: tomato;
}
section {
width: 400px;
height: 400px;
background-color: orange;
}
</style>
</head>
<body>
<main>
<div class="one"></div>
<div class="two"></div>
</main>
<section></section>
</body>
</html>
初始時的效果,高度出現(xiàn)塌陷,下部的橘色模塊會上移。現(xiàn)給出五種解決方案:

一、給父元素設置固定高度,雖然簡便,但不推薦使用,因為網(wǎng)頁的內容是動態(tài)變化的,給定高度不利于后期內容增添。
給main父級加上高度,設為200px即可

對應運行結果:

二、將父元素的overflow設為一個非visible值,適用于子元素未溢出的情形。這里給main設置overflow:hidden,效果同上圖一樣

對應運行結果:

三、利用clear屬性清除浮動影響。
先于main中添加一個類名為box的空div標簽,再于style中設置其clear屬性,實現(xiàn)效果同上


對應運行結果:

四、利用after偽類給父級添加一個空塊級內容,并設置clear屬性
這種方法可以看作是第三種方法的優(yōu)化,因為一個空標簽其實是比較多余的,可以通過after偽類進行添加。添加下圖代碼后,便能解決問題。

對應運行結果:

五、直接使用clearfix類,引入以下代碼

之后向main添加clearfix類即可

對應運行結果:

到此這篇關于HTML5之高度塌陷問題的解決的文章就介紹到這了,更多相關HTML5高度塌陷內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持腳本之家!
相關文章
Html5讓容器充滿屏幕高度或自適應剩余高度的布局實現(xiàn)
這篇文章主要介紹了Html5讓容器充滿屏幕高度或自適應剩余高度的布局實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下2020-05-14
這篇文章主要介紹了HTML5 textarea高度自適應的兩種方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起2020-04-08


