2016-07-05 59 views
0

enter image description here您好,我正在嘗試製作水平導航欄。 enter image description here 對於我已經把溢出:隱藏。 對於李我已經把浮動:左。 而且我在水平導航欄下有一些段落。是否溢出:隱藏是否使塊級別元素?

當我刪除「overflow:hidden」時,段落將會在我的水平導航欄旁邊移動。 我不明白爲什麼。 有人可以請給我解釋一下嗎?

+0

能否請您分享您的HTML,CSS? –

回答

0

overflow: hidden;用於清除li標籤上的浮標。沒有它的時候,這個段落在列表旁邊,因爲李的左邊是浮動的。

+0

謝謝你的回覆。所以當我製作水平導航欄時,必須始終使用overflow:hidden;和float:left? –

+0

有多種清除浮動塊的方法。通常,最常用的方法稱爲micro clearfix,它使用psuedo元素(:before,:after)來清除它。 http://nicolas.gallagher.com/micro-clearfix-hack/ –

+1

非常感謝你 –

1

沒有。 從不使用overflow:hidden上一個navigation
overflow:hidden可以隱藏你需要可見的元素。所以不要使用它,除非你真的需要

但在這種情況下,你不

在這裏看到:jsfiddle

使用clear:left在一段 代碼:

li { 
    float:left; 
    padding:10px 
} 
ul { 
float:left; 
list-style:none; 
background:grey; 
width:auto; 
} 
p { 
clear:left; 
float:left; 
width:100px 
} 

ul(導航列表上使用float:left;width:100%

看到這裏jsfiddle

代碼:

li { 
    float:left; 
    padding:10px 
} 
ul { 
float:left; 
list-style:none; 
background:grey; 
width:100%; 
} 
p { 

float:left; 
width:100px 
} 
+0

浮動一切離開不會幫助進一步在頁面下面的東西。最好清除浮動,然後你將不需要把所有東西都放到100% –

+0

我只是浮動''p'只出於一些原因。如果你在'ul'上使用'float:left'和'width:100%',你就不會有任何問題,你不需要'浮動'或'100%'任何其他元素 –