CSS中的定位:如何使绝对定位的内容显示在相对定位的父元素之外



我遇到了一个让我抓狂的问题,而如果你曾经面对过这个问题,它应该对你来说很容易。

我正在使用下拉菜单。主菜单div的位置是相对的,这样它就会按照html的顺序出现。此菜单包含出现在类别点击上方的绝对位置按钮。在菜单之后是内容,在另一个相对位置的div中。

问题是子导航按钮被内容div隐藏了。它们不只是出现在它后面,它被隐藏了,因为在菜单div之外。

我的页面是这样的:

头(相对)


菜单-类别v类别v类别v


内容(相对)


所有这些都有一个包含父元素的静态位置,用于布局显示。

注意:我当然是通过在内容div中包含菜单来工作的。最大的挑战是我想让它在内容div之外,这样菜单就可以更大了。

希望我已经说清楚了,提前感谢你的回复。如有任何帮助,不胜感激。

问候,杜克

--------------- ----------------

哇。真不敢相信这么简单。

问题来自溢出:隐藏,我写得很自动。删除它,菜单的内容弹出的div像魔术一样:)实际上,这是真正合乎逻辑的,我现在得到它,它正在工作;)

谢谢大家和Henry这么快就解决了问题。干杯!

看看你的网站,你确实有overflow: hidden;设置在菜单@ global.css 225行。

去掉这个,你的菜单就会显示出来了。

编辑

我想一个简短的解释是合适的。overflow: hidden;设置基本上截断任何溢出。也就是说,如果将容器设置为overflow: hidden;,则任何溢出的内容(在本例中是您的out- bounds菜单)都将被剪切。

overflow .文档

如果你发布了代码,这将是非常有帮助的,但你可以尝试这样做:将z-index:9999添加到子菜单项,看看它是否有效。

最新更新