css3中清除浮動的程式碼是什麼

2022-04-11 19:00:42

程式碼是:1、「.clear{clear:both}」,規定元素左右不浮動;2、「overflow:auto」,設定內容被修剪來清除浮動;3、「元素:after{display:table;}」,設定元素以塊級表格顯示,佔滿剩餘空間清除浮動。

本教學操作環境:windows10系統、CSS3&&HTML5版、Dell G3電腦。

css3中清除浮動的程式碼是什麼

方法1:使用帶clear屬性的空元素

使用空標籤清除浮動:在需要清除浮動的父級元素內部的所有浮動元素後新增一個空標籤(理論上可以是任何標籤,但常用<div>和<p>)清除浮動,併為其定義CSS程式碼clear:both。

程式碼範例:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
.demo{
width: 500px;
margin: 50px auto;
background-color: #CCCCCC;
}
.left{
width: 100px;
height: 100px;
float: left;
background-color: #21B4BB;
}
.right{
width: 100px;
height: 50px;
float: right;
background-color: #21B4BB;
}
.clear{
clear:both;
}
</style>
</head>
<body>
<div class="demo">
<div class="left">left</div>
<div class="right">right</div>
<div class="clear"></div>
</div>
</body>
</html>

優點:簡單,程式碼少,瀏覽器相容性好。

缺點:需要新增大量無語意的html元素,程式碼不夠優雅,後期不容易維護。

方法2:使用CSS的overflow屬性

使用overflow清除浮動:只需在需要清除浮動的元素中定義CSS程式碼overflow:auto或overflow:hidden即可。

程式碼範例:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
.demo{
width: 500px;
margin: 50px auto;
background-color: #CCCCCC;
overflow:hidden
}
.left{
width: 100px;
height: 100px;
float: left;
background-color: #21B4BB;
}
.right{
width: 100px;
height: 50px;
float: right;
background-color: #21B4BB;
}
</style>
</head>
<body>
<div class="demo">
<div class="left">left</div>
<div class="right">right</div>
</div>
</body>
</html>

優點:不存在結構和語意化問題,程式碼量極少

缺點:內容增多時候容易造成不會自動換行導致內容被隱藏掉,無法顯示需要溢位的元素

方法3:使用CSS的:after偽元素

對父元素使用:after偽元素,設定display:table。

display:table 使生成的元素以塊級表格顯示,佔滿剩餘空間。

通過content: " "生成內容作為最後一個元素,至於content裡面是什麼都是可以的,CSS經典的是 content:".",有些版本可能content裡面內容為空。

程式碼範例:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
.demo{
width: 500px;
margin: 50px auto;
background-color: #CCCCCC;
*zoom: 1;
}
.demo:after { 
content: " ";
display: table; 
clear: both;  
}  
.left{
width: 100px;
height: 100px;
float: left;
background-color: #21B4BB;
}
.right{
width: 100px;
height: 50px;
float: right;
background-color: #21B4BB;
}
</style>
</head>
<body>
<div class="demo">
<div class="left">left</div>
<div class="right">right</div>
</div>
</body>
</html>

缺點:適合現代瀏覽器,不支援IE6/7,*zoom: 1就是為了相容IE6/7

(學習視訊分享:)

以上就是css3中清除浮動的程式碼是什麼的詳細內容,更多請關注TW511.COM其它相關文章!