我們在寫頁面時經常會出現一些小問題,需要我們清除浮動,那麼如何清除浮動呢,都有哪些方式呢?接下來和大家討論一下。
clearfix清除浮動分為兩種:
清除自身浮動
#清除父級浮動
一、為什麼要清除浮動
一個區塊級元素的高度如果沒有設定height,那麼其高度就是由裡面的子元素來撐開的,如果子元素使用浮動,脫離了標準的文檔流,那麼父元素的高度會將其忽略,你可以使用firebug查看下如果不清除浮動,父元素會出現高度不夠,那樣如果設定border或者background都得不到正確的解析。
簡潔清除浮動
clearfix1:before,.clearfix1:after{ content: ""; display: table; } .clearfix1:after{ clear: both; overflow: hidden; } .clearfix1{ zoom: 1; }
#經典清除浮動:
.clearfix2:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; } * html .clearfix2 { zoom: 1; } /* IE6 */*:first-child+html .clearfix2 { zoom: 1; } /* IE7 */
overflow清除浮動:
/* overflow:auto */#demo3{ overflow:auto;*zoom:1; }/*或 overflow:hidden */#demo4{ overflow:hidden;*zoom:1; }
inline-block方式
#demo5{ display:inline-block;*display:inline;*zoom:1; }
這個方法和上面的其它方法會有點差異,主要是inline-block造成的。
以上是多種方式清除浮動,他們之間有什麼不同的詳細內容。更多資訊請關注PHP中文網其他相關文章!