程式碼是:1、「.clear{clear:both}」,規定元素左右不浮動;2、「overflow:auto」,設定內容被修剪來清除浮動;3、「元素:after{display:table;}」,設定元素以塊級表格顯示,佔滿剩餘空間清除浮動。
本教學操作環境:windows10系統、CSS3&&HTML5版、Dell G3電腦。
方法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其它相關文章!