下面是違規代碼。要測試它,請將其保存在名爲「test.html」的文件中,然後單擊左上角的按鈕。IE7模式對話框滾動條重疊內容
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Blarg</title>
<style type='text/css'>
body { margin: 20px; }
#test { background: red; height: 2000px; }
</style>
</head>
<body>
<div id="test"><input type='button' onclick="javascript:window.showModalDialog('test.html', window, 'dialogWidth: 300px; resizable: yes;');" /></div>
</body>
</html>
如果我在正常的IE7窗口打開頁面,它工作正常。
但是,如果我在IE7模式對話框中打開它,它會在邊距頂部繪製垂直滾動條。更糟糕的是,因爲它會在邊距的頂部繪製滾動條,這也會導致繪製水平滾動條。
我該如何解決這個問題?我絕對必須使用IE模式對話框,我無權改變這一點。
你能否詳細說明這個基本規則?你想IE7模式對話框工作的任何網址,或只是你的創作的HTML? HTML限於你在這裏的內容嗎?並且是否允許Javascript?看來,IE模式對話框不同於IE窗口和其他瀏覽器模式對話框,所以我們不能在水上行走。 – brainjam 2010-04-19 00:56:55
@brainjam我當然可以。我控制HTML,除了高度未設置爲2000px(它隨着內容增長)之外,HTML本質上就是我在這裏所做的,它只需要爲模態對話框工作,它需要在IE和Firefox上工作。 JavaScript肯定是允許的。此外,橫向滑塊需要消失,除非寬度比dialogWidth寬。 – cdmckay 2010-04-19 05:50:59