CSS中清除浮動的方式探究

前言:爲什麼要清除浮動?

因爲浮動的元素會脫離當前文檔流,將不再佔用當前頁面的位置,這樣它下面的元素會往上移動,從而使得原有的樣式發生變化,這是我們不希望看到的,所以設置浮動後一定要清除浮動!

方式1、使用樣式屬性clear:   clear:left;//清除左浮動        clear:right;//清除右浮動         clear:both;//清除所有浮動

一般我們都會採用clear:both;     具體代碼如下:標紅代碼是關鍵代碼

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>清除浮動方式1</title>
	<style type="text/css">
	#div2{
		float: left;
	}
	#div3{

		float: right;
	}
	.clear{
		clear: both;
	}
	</style>
</head>
<body>
	<div id="div1" style="border:1px solid red;width:800px;">
		<div id="div2" style="border:1px solid green;width:200px;height:200px;background-color:green;">
		</div>
		<div id="div3" style="border:1px solid blue;width:200px;height:200px;background-color:blue;">
		</div>
		<div class="clear"></div>  <!--這裏的<div class="clear"></div>不能放置在父div外面,要緊挨着設置浮動的div,否則無效-->
	</div>

</body>
</html>
方式2、使用overflow:hidden;  overflow:hidden;原本用於隱藏超出div顯示區域部分的內容,除此之外,還可以用於清除浮動,不過需要注意的是:一定要給需要清除浮動的元素的父標籤使用該設置,具體代碼如下:標紅部分爲關鍵代碼:
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>清除浮動方式2</title>
	<style type="text/css">
	#div2{
		float: left;
	}
	#div3{

		float: right;
	}
	</style>
</head>
<body>
	<div id="div1" style="border:1px solid red;width:800px;overflow:hidden;"><!--一定要給父標籤設置-->
		<div id="div2" style="border:1px solid green;width:200px;height:200px;background-color:green;">
		</div>
		<div id="div3" style="border:1px solid blue;width:200px;height:200px;background-color:blue;">
		</div>
	</div>

</body>
</html>
方式3、給父元素設置一個固定的高度,不怎麼用,因爲一個元素的高度通常不是手動設置的,而是由內容"撐"起來的!具體代碼如下:標紅的爲關鍵代碼:
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>清除浮動方式2</title>
	<style type="text/css">
	#div2{
		float: left;
	}
	#div3{

		float: right;
	}
	</style>
</head>
<body>
	<div id="div1" style="border:1px solid red;width:800px;height:200px;"><!--注意是給父標籤設置-->
		<div id="div2" style="border:1px solid green;width:200px;height:200px;background-color:green;">
		</div>
		<div id="div3" style="border:1px solid blue;width:200px;height:200px;background-color:blue;">
		</div>
	</div>

</body>
</html>





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章