欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ie右键菜单bug

程序员文章站 2022-07-14 13:10:21
...

如果多层(z-index不同)div同样大小,或者最底层的div大小比上层的大,而且底层div包含了img标签,其上层div右键菜单在ie上会默认为img所在层的菜单,造成本身的菜单无法弹出。

有点绕,可以到web.qq.com测试(至少本日志发布时间该问题还存在),在桌面空白的地方右键其他浏览器可以正常弹出菜单,而ie却不行。如下面的页面,正常会弹出div20,ie则弹出div0。

<div id="div0" style="left:0; top:0; height:400px; width: 600px; position: absolute;z-index: 0" oncontextmenu="alert('div0')">
        <img src="http://www.iteye.com/images/user-logo.gif"  style="height:100%;width:100%;"/>
    </div>
    <div id="div20" style="position: absolute; left:0; top:0; z-index: 20; height:400px;width: 600px;"  oncontextmenu="alert('div20')">1</div>
    <div  id="div10" style="position: absolute; text-align:center; left:0; top:0; z-index: 10; height:400px;width: 600px; color: red"  oncontextmenu="alert('div10')">2</div>

 一直困扰的一个问题,今天静下心来调试了一下。发现是background的问题,ie右键按z-index计算,对未设置background的div如果下层有img标签则会使用img标签所在层的右键菜单,所以对div20设置一个background(不能为transparent),加颜色,或者可以设置个透明图片即可解决。

相关标签: ie 右键菜单