我处理IE8& amp; Websphere 6.1。
有一个非常基本的不透明度设置,我们在某个屏幕的顶部有一个模态类型对话框。我在后台屏幕顶部放置了一个不透明的div,因此用户无法点击任何控件但可以看到它,然后将对话框添加到topop&迫使他们回答这个问题。看似很基本,很容易做到。
这是用于创建上述不透明效果的css:
.wipeOutDiv {
top: 0px;
left: 0px;
position: absolute;
width: 100%;
height: 100%;
background-color: #d9d9d9;
filter: alpha(opacity=70);
opacity: 0.70;
}
这是用于创建对话框的CSS:
.dialogBox {
position: absolute;
width: 350px;
margin: auto;
z-index: 1;
background-color: white;
border-top:12px solid;
border-top-color: #ffd93f;
border-left: 2px solid;
border-right: 2px solid;
border-bottom: 2px solid;
border-color: #ffd93f;
padding: 8px;
top: 40%;
left: 40%;
font-family: arial;
font-size: 8pt;
}
此方案适用于所有浏览器的开发。在我的机器上本地工作正常,在集成环境中它也可以正常工作。以为我很清楚。
然而,一旦进入我们的ST环境或以上,不透明度无法与IE8正常工作。它仍适用于Chrome& FF但由于某种原因IE8无法正常工作。 div使用' wipeOutDiv' CSS类变得完全可靠,看起来很奇怪。我尝试过修改IE的浏览器模式和文档模式,但我没有改变任何东西使它在这些环境中运行。
我在环境之间比较了DOM文档,它们是相同的。留给我的唯一变量是应用程序服务器本身,在本例中是Websphere 6.1。我注意到一个区别是它工作的环境是通过http和环境提供的,它不是https。这看起来更像是巧合,而不是真正的根本原因。
我非常生气。有人有任何建议或类似经历吗?
答案 0 :(得分:1)
这最终成为IE在本地计算机上在不受信任的站点上启用“保护模式”的问题。 IE不透明黑客需要使用外部.DLL文件,IE不会在没有启用保护模式的情况下发生这种情况。只有当某人的机器在生产中正常工作并且他们发现他们已将该网站添加到可信列表中时,才能解决此问题。