我在所有页面上都有一个由 JavaScript 创建的下拉菜单,并且某些列最多包含 20 个项目。在 Mozilla 浏览器中,此下拉列表显示在所有内容的最上面,但在 Internet Explorer 中,当 ActiveX 对象显示在其正下方时,它会被部分覆盖。
我尝试过在 DIV 层中显示 ActiveX 并设置 z-index,但到目前为止我还没有找到有效的解决方案。将样式添加到对象标记没有效果......
<object etc style='z-index:3;'>
将样式应用于包含该对象的 DIV 也没有效果...
<div align="center" style="z-index:2;">
下拉菜单应用了 z-index=1。向对象添加“wmode”参数也不起作用......
<param name='wmode' value='transparent'>
显然,问题在于进程内插件与进程外插件。进程内插件(和 activex)将在与网页本身相同的环境中运行并遵循 z 顺序。但进程中的情况很少见。大多数浏览器在单独的进程中运行插件和activex,因此网页位于一个进程中,而activex/插件位于不同的进程中。浏览器通过让插件/activex 在包含网页的屏幕区域中绘制自身,使其看起来像是一个单一进程,但您了解它的烟雾和镜子,并且 z 排序实际上被忽略了。它绘制网页(包括菜单),然后导致插件/activex 绘制。
解决这个问题的唯一方法(并不总是有效)是将 html 菜单包装在 iframe 中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)