2010-11-17 36 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