当前位置:  开发笔记 > 前端 > 正文

z-index是强制元素定位在另一个元素之上的唯一方法,如果没有其他方法吗?

如何解决《z-index是强制元素定位在另一个元素之上的唯一方法,如果没有其他方法吗?》经验,为你挑选了1个好方法。

我正在开发一个带有地图的应用程序,角落里有一个div,里面有一些东西.您可以单击此地图以在一个小窗口中显示一些信息.在某些情况下,窗口被角落里的div覆盖.

我想要相反的效果(窗口覆盖div).我认为这只是一个z索引问题,但我无法让它工作.这是在IE7和读取一点似乎z-index将无法工作,除非它在一个定位的元素内.

这些元素似乎正确定位,以使z-index正常工作,但我运气不佳.我已经玩过通过Firebug添加样式但是没有任何运气可以改变任何东西.窗口真的只是两个div,一个绝对定位一个,一个相对一个内部.

z-index是唯一可能成为问题的东西还是还有其他我不知道的东西?

有没有其他方法可以达到我想要的效果?我不能简单地通过jquery或其他东西隐藏div,因为它的一部分应该从地图上打开的窗口后面看到.



1> Miquel..:

您正在遇到堆叠上下文错误

http://therealcrisp.xs4all.nl/meuk/IE-zindexbug.html

IE中的每个定位div都将创建一个新的堆叠上下文,并防止来自不同堆叠上下文的z-index成为其他堆栈上下文.

解决方案是让你想要的窗口在树中(例如进入体内),并且z-index值比覆盖窗口的另一个div的所有父项的z-index更大.

这里有大量的信息来理解这个问题:http: //richa.avasthi.name/blogs/tepumpkin/2008/01/11/ie7-lessons-learned/

推荐阅读
跟我搞对象吧
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有