IE8 CSS / combobox错误(奇怪的显示文字)

前端之家收集整理的这篇文章主要介绍了IE8 CSS / combobox错误(奇怪的显示文字) 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试识别此错误.这是一个已知问题还是全新的?有没有一种解决方法(例如我可以添加来修复它的zoom:1或position:relative?),理想情况下无需在此处修改html,而只需添加即可.

如果在IE8中显示以下html,您将看到select(组合框)中的文本显示两次.组合框外面的一个.这搞乱了我的文档流程(更不用说看起来很奇怪了).

<html><body>
<div style="width: 800px;">
 <div style="float: right" >     
 </div> 
 <div style="display: none">
     ijklmno
 </div>
 <div style="float:left">
  <select>
   <option>abcdef</option>
  </select>
  <div style="float: right">
  </div>
 </div>
</div>
</body></html>
最佳答案
这绝对是一个错误,因为您在布局样式规则中非常明确.但这首先是一个很奇怪的安排.如果取消隐藏隐藏的div,添加文本或将div隐藏在选择下方,则问题将消失.我最好的猜测是,由于块级元素重叠在一起,其中一个隐藏而一个空,因此IE忽略了浮动,并试图使它们相互重叠,这迫使该选项向下移动,但由于选择保持不变,它也显示选择中的选项.

很奇怪,很酷.在我看来,您的选择是在最后一个div中添加一些内容(可能是不间断的空格),或者隐藏div(显示:无),或两者兼而有之.

在Firefox中,最后一个div也没有正确浮动,并且与select重叠(您可以通过使用Developer Toolbar概述块级元素来说明),这使我认为Firefox在处理重叠的块级元素方面更好.

如果将最后一个div设置为有边框,则会看到它不在主div的右侧浮动.

猜你在找的CSS相关文章