程式碼是:1、“.clear{clear:both}”,規定元素左右不浮動;2、“overflow:auto”,設定內容被修剪來清除浮動;3、“元素:after{ display:table;}”,設定元素以區塊級表格顯示,佔滿剩餘空間清除浮動。
本教學操作環境:windows10系統、CSS3&&HTML5版、Dell G3電腦。
方法1:使用帶有clear屬性的空元素
使用空標籤清除浮動:在需要清除浮動的父級元素內部的所有浮動元素後添加一個空標籤(理論上可以是任何標籤,但常用
)清除浮動,並為其定義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
(學習影片分享: css影片教學)
以上是css3中清除浮動的程式碼是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!