使用IE时,不能在选择的输入元素上放置绝对定位的div.这是因为select元素被认为是一个ActiveX对象,并且位于页面中每个HTML元素的顶部.
我已经看到人们在打开弹出窗口时隐藏选择,这会导致控件消失的用户体验非常糟糕.
FogBugz实际上有一个非常聪明的解决方案(在v6之前)在显示弹出窗口时将每个选项转换为文本框.这解决了这个错误并欺骗了用户的眼睛,但行为并不完美.
另一个解决方案是在FogBugz 6中,他们不再使用select元素并在任何地方重新编码.
我目前使用的最后一个解决方案是搞乱IE渲染引擎并强制它将绝对定位 有没有人比这个有更好的解决方案? 编辑:这个问题的目的是提供信息,因为它是一个真正的问题.我发现这个 我不知道比Iframe更好的事情 但是我确实发现这可以通过查找几个变量在JS中添加 IE 6 一个高Z-Index(你倾向于设置一个z-index,如果你浮动一个div) 一个盒子元素 然后,查找这些项目并只添加iframe层的脚本将是一个简洁的解决方案 保罗 感谢iframe黑客解决方案.它很丑陋而又优雅.:) 只是评论.如果您碰巧通过SSL运行您的站点,则虚拟iframe标记需要指定src,否则IE6会抱怨安全警告. 例: 我见过有人推荐将src设置为blank.html ...但我更喜欢javascript方式.去搞清楚.内部放置一个不可见的
#MyDiv iframe
{
position: absolute;
z-index: -1;
filter: mask();
border: 0;
margin: 0;
padding: 0;
top: 0;
left: 0;
width: 9999px;
height: 9999px;
overflow: hidden;
}
技巧是一个很好的解决方案,但我仍在寻找改进方法,比如删除这个丑陋无用的标签会降低可访问性.
1> Pbearne..:
2> 小智..:
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有