Closed hightman closed 11 years ago
跟踪了一下发现把 class="modal hide fade" 改为 class="modal fade in" 时就会在IE6下半透明。 原因就出在这个 "in" 身上,但是奇了怪的是从头找到尾也没在 in 里看到有半点修改 opacity 的css,甚至强制写上 1.0 + filter: alpha(opacity=100)也无效。。。
搞定了,原因就是css选择器的不兼容写法导致的。在 ie.css 中(预计ie7也类似问题未测试)加入以下几行即可:
.modal.fade.in {
_filter:alpha(opacity=100);
}
.modal-backdrop {
_filter: alpha(opacity=80);
}
To @hightman:Good work!已按你的解决方案将此问题修复,见 master 分支。
IE6 不支持形如 .classname1.classname2 的选择器,它会将其解释为 .classname2 ,这样一来 .modal.fade.in 会改变之前所有 .in 的样式,tooltip 中也用到了 .in ,但考虑到 tooltip 即使不透明也可用,所以不再继续深究此问题,不得已之处就在 IE6 下降级显示了。
不好意思,又来报BUG了,显示 modal 时在IE6下似乎也被应用上了一层半透明效果,导致显示似乎很暗。以下是试验代码: