この一般的な構造を持つ Web ページがあります。
<div id="container">
<div id="basicSearch">...</div>
<div id="advancedSearch" style="display: none">...</div>
<div>
この CSS では:
#container { MARGIN: 0px auto; WIDTH: 970px }
#basicSearch { width:100% }
#advancedSearch{ width:100%;}
このページには、ユーザーが「基本」検索と「高度な」検索を切り替えるためのリンクがあります。トグル リンクは、次の Javascript を呼び出します。
var basic = document.getElementById('basicSearch');
var advanced = document.getElementById('advancedSearch');
if (showAdvanced) {
advanced.style.display = '';
basic.style.display = 'none';
} else {
basic.style.display = '';
advanced.style.display = 'none';
}
これはすべてIEでうまく機能します。
これは Firefox でも機能しますが、ただし、ある div から別の div に切り替える (つまり、表示/非表示) と、Firefox でページが「移動」します。前後に切り替えると、「コンテナ」内のすべてのテキストが左右に約 5px 移動します。理由を知っている人はいますか?