2017-07-30 59 views
-2

僞元素在這個example,爲什麼container需要有僞元素afterbeforecontent: ''display: table顯示灰色的背景?不應該container自動擴展以適應其兩個孩子,然後用灰色背景填充負空間而不使用僞元素?CSS爲什麼你需要用空字符串

回答

-1

這被稱爲'clearfix',當一個容器的所有孩子都浮動時,你必須使用一個clearfix。 我把在容器中的黑色背景:

隨着clearfix:https://codepen.io/anon/pen/GvoEjx

沒有clearfix:https://codepen.io/anon/pen/NvxgRe

https://css-tricks.com/snippets/css/clear-fix/

.container:before, 
.container:after { 
    content: ""; 
    display: table; 
    clear: both; 
} 
+1

此外,'顯示:流動root'現在在某些瀏覽器中是一個選項,對此它與clearfix的區別是相當的技術。 – jhpratt

+0

明確:修復不允許元素在它上面浮動,但在這種情況下,它是如何影響容器元素是否獲得背景? – stackjlei

+0

對於那個例子,爲什麼你需要在'之前'?難道你不需要它在'後'? – stackjlei

相關問題