我使用$ .blockUI與jQuery來顯示模式對話。該HTML看起來像:爲什麼我的div不能正確居中?
<div id="progressDialogue" class="mp_modalpopup">
<div class="mp_container">
<div class="mp_header">
<span id="pd_header_text" class="mp_msg">Please wait..</span>
</div>
<div class="mp_body">
<img src="ajax-loader.gif" style="text-align:center" alt="loading" />
</div>
</div>
</div>
的CSS是這樣的:
.mp_modalpopup
{
font-family: arial,helvetica,clean,sans-serif;
font-size: small;
padding: 2px 3px;
bottom: 50%;
right: 50%;
position: absolute;
width: 400px;
z-index:999;
}
.mp_container
{
width: 400px;
border: solid 1px #808080;
border-width: 1px 1px;
left: 50%;
position: relative;
top: 50%;
}
/* removed mp_header, mp_body, mp_msg CSS for brevity */
這會高興地呈現在頁面上其他HTML的頂部中央嫌爆炸。
但是如果我在.mp_modalpopup
CSS類設置display:none
,然後使用$ .blockUI使其可見,在IE 8中的對話中心本身在垂直方向而留下關閉頁面,並在谷歌Chrome和Firefox的對話的一半對齊該對話根本不可見(但blockUI正在工作,因爲該頁面變灰)。
這是blockUI的javascript:
$.blockUI.defaults.css = {};
$.blockUI({
message: $('#progressDialogue'),
overlayCSS: { backgroundColor: '#000', opacity: 0.1 },
css: {backgroundColor: '#00f', color: '#100'}
});
這究竟是爲什麼?
感謝您的回答,可悲的是,這是行不通的。 – Kev 2010-03-25 19:42:25
@Kev - 刪除CSS並讓它居中會發生什麼? – 2010-03-25 20:29:32
有一堆傳統的HTML和CSS圍繞我自己的代碼(傳統的ASP包括等)。問題進一步發生在樹上,需要進行一些重大修改來解決這個問題。 – Kev 2010-04-14 19:42:40