这是我在说的JS小提琴:

http://jsfiddle.net/r77K8/98/

我的叠加显示了禁用该链接的外观,但是该链接仍然可单击。我浏览了模态对话框窗口的一些示例,以期找到解决方案。据我所知,我需要使用绝对定位。

我很犹豫,因为实际上我的内容是动态填充的。似乎需要进行很多额外的工作,以尝试使覆盖层保持正确的尺寸-我真的很喜欢现在的外观,我只是想在覆盖层为父级时使控件不可单击。这可能吗?

最佳答案

在您的示例中,您似乎具有要在叠加层div内禁用的内容。为了使它起作用,您需要将overlay div放在内容之上,因此请将其放在您的内容之后。这样,它掩盖了您的内容div。

是的,叠加层应具有绝对的位置,以便将其放置在父容器的右上角,并为其提供100%的宽度和高度,以使其覆盖整个父容器。

有关示例,请参见this jsfiddle



编辑:

尝试使用this example。将内容物和覆盖层都放在容器中。这样,叠加层将仅占据页面的该部分。

请注意,容器div(divLink1divLink2)必须具有position:relative才能起作用。根据this link中的absolute描述,“元素相对于其第一个定位(非静态)祖先元素定位。”因此,您必须将容器设置为position:relative,但实际上不要移动它们。

关于javascript - 模态叠加是否需要绝对定位?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9621808/

10-16 17:48
查看更多