當我在大頁面上遇到問題時,我正在處理帶有透明背景疊加層的JavaScript對話框。IE高度> 4096px顯示透明度錯誤?
如果頁面很大,透明覆蓋圖將是純色(即不再透明)。我做了一些測試,發現這隻發生在疊加高於4096像素(嗯,可疑,這是2^12)。
任何人都可以驗證此問題嗎?你有沒有看到解決方法?
這裏是我的測試代碼(我使用的原型):
<style>
.overlayA {
position:absolute;
z-index:10;
width:100%;
height:4095px;
top:0px;
left:0px;
zoom: 1;
background-color:#000;
filter:alpha(opacity=10);
-moz-opacity:0.1;
opacity:0.1;
}
.overlayB {
position:absolute;
z-index:10;
width:100%;
height:4097px;
top:0px;
left:0px;
zoom: 1;
background-color:#000;
filter:alpha(opacity=10);
-moz-opacity:0.1;
opacity:0.1;
}
</style>
<div style="width:550px;height:5000px;border:1px solid #808080">
<a href="javascript:// show overlay A" onclick="Element.show('overlayA')">Display A = 4096h</a>
<br /><a href="javascript:// show overlay B" onclick="Element.show('overlayB')">Display B = 4097h</a>
</div>
<div id="overlayA" onclick="Element.hide(this)" class="overlayA" style="display:none"></div>
<div id="overlayB" onclick="Element.hide(this)" class="overlayB" style="display:none"></div>
任何工作解決方案對於IE? – muneebShabbir 2012-05-22 05:53:34
您需要確定屏幕何時大於4096,並使用多個疊加層,其中一個位於前一個之下。 – 2012-05-22 13:21:18