2016-08-07 143 views
2

This回答說:浮動元素忽略填充嗎?

當你漂浮的元素,它有效地把它從文件流,所以添加填充到其父不會有它的效果。 [...]

另外MDN states在於:

[...]當一個元件被浮置它被取出文件的正常流動的。它向左或向右移動,直到它接觸到其包含框或其他浮動元素的邊緣。

好了,不知怎麼的,我加了襯墊,以父元素和浮動一個被轉移:

JSFiddle

HTML:

<body> 
    <div id=parent> 
     <div id=a></div> 
    </div> 
</body> 

CSS:

#a{ 
    width: 100px; 
    height: 100px; 
    background-color: red; 
    float: left; 
} 

#parent 
{ 
    padding: 100px; 
} 
+0

該答案可能描述了一些舊的非標準行爲......我無法重現該問題中描述的問題。 – Oriol

回答

3

不可以。浮動不會忽略其容器的填充。

10.1 Definition of "containing block"

包含塊由最近的 塊容器祖先的內容邊緣形成:

浮點數的包含塊由容器的內容邊緣建立框。

該內容邊緣受容器的填充:

8.1 Box dimensions

enter image description here

與浮子不能去頂部或左邊的比他們的包含塊。

Float rules

左浮動框的左外邊緣可以不包含它的塊的左邊緣的左側。一個類似的規則適用於右浮動元素。

浮動箱的外頂不得高於其包含塊的頂部。