QA@IT
この質問・回答は、@ITの旧掲示板からインポートされたものです。

showModalDialogと<base target="_self">について

他の記事を参考にして、ダイアログから別ウィンドウが表示されないようになったのですが、一回目のSubmit時に、何故か周りに余計な空白が入ってしまいます。
解決方法がありましたらお願いいたします。

■呼び出し元ソース:src.html


Sub OpenSubWindow()
window.showModalDialog("sub.html")
End Sub

■サブウィンドウ側ソース:sub.html




test





[ メッセージ編集済み 編集者: ハント 編集日時 2009-02-03 18:54 ]

質問者:ハント

回答

ハントさんの書き込み (2009-02-03 18:52) より:

一回目のSubmit時に、何故か周りに余計な空白が入ってしまいます。

余計な空白と言うのはボタンがロード時よりズレて?表示される様な現象ですよね?
CSSを設定する事で回避は出来ますよ。

.test
{
top: ○○px;
left: ○○px;
}







投稿者:ごん太

編集 履歴 (0)

ご回答ありがとうございます。
ただ、頂いたコードのtopとleftに50pxを指定して試してみましたが、
ボタンの位置は初回と1回目でずれてしまいました。

なお、実際に使用したいダイアログは、ボタンだけの画面ではなく、
ドロップダウンとリスト(で作成)を表示し、ドロップダウンの選択肢により
リストの内容をDBから取得した値に書き換えています。
現象が再現できる最小コードという意味でボタンだけのhtmlを例にあげました。

投稿者:ハント

編集 履歴 (0)

すみません。一行ぬけてました。
下記コードをCSSに追加して下さい。

position:absolute;

投稿者:ごん太

編集 履歴 (0)

すみません、自己解決しました。

原因ははっきりとはわかりませんが、1回目のSubmit後、bodyにマージンが設定されて
しまうようです。

で回避できました。

ごん太さん
ご回答ありがとうございました。

投稿者:ハント

編集 履歴 (0)
ウォッチ

この質問への回答やコメントをメールでお知らせします。