2010-11-17 35 views
0

喜歡在標題中。CSS3 - 父級背後的菜單元素?

我有三個級別的菜單,並希望它看起來像:

[ FIRST LEVEL ITEM ] 
-------------------- 
[ SECOND LEVEL ITEM ] 
[ SECOND LEVEL ITEM ] 
[ THIRD LEVEL ITEM ] 
[ SECOND LEVEL ITEM ] 
[ THIRD LEVEL ITEM ] 
[ SECOND LEVEL ITEM ] 

但第三級項顯示僅落後於其他項目。

我加了巨大的50像素的紅色框給他們,這樣你就能夠看到有什麼意義:

http://jsfiddle.net/TQH9v/

我有點困了累了&必須今天完成這個代碼,所以對不起,這麼多愚蠢的問題。至少容易信譽分:P

謝謝:)

回答

0

你的CSS有很多在裏面多餘的東西,所以我不打算精確編輯。

你需要了解的是精彩的z-index模型。你從來沒有提到過,如果你想在IE中工作,所以我只是解釋它爲真正的瀏覽器。

首先,爲所有LI元素添加position: relative;。像

#page-navigation li { position: relative; } 

東西會工作。

現在,爲包含「彈出」菜單的每個UL元素添加一個z索引,並將其設置爲高於父LI的z索引。如果不設置z-index的,則默認爲0。

https://developer.mozilla.org/en/understanding_css_z-index

如果你想要這個工作在IE,你必須父李設定爲比它包含彈出式視窗更高的z-index UL。這是多麼愚蠢的IE瀏覽器工作。 http://brenelz.com/blog/squish-the-internet-explorer-z-index-bug/

+0

其實它不工作我的朋友,我知道代碼有點混亂,目前我正在處理它,但在這種情況下的主要問題是如何釋放一些空間爲第三級ul,因爲即使Z指標和相對位置,他們只是高於其他鏈接:)我不明白他們上面,但低於:) – fomicz 2010-11-17 11:13:41

+0

沒關係我想通了,不得不改變鏈接高度自動,所以他們自由兒童的空間。反正+1,因爲你是第一個也是最後一個至少想要幫助我的人。 – fomicz 2010-11-17 11:21:30

+0

噢..在你原來的問題中,你說它是「低於」的,我認爲這是指在z-index模型中,因爲這是最明顯的問題。 – kmiyashiro 2010-11-18 00:55:14