У нас есть веб-страница с такой общей структурой:
<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 в другой, страница «перемещается» в Firefox. Весь текст в «контейнере» перемещается примерно на 5 пикселей влево / вправо, когда вы переключаетесь назад и вперед. Кто-нибудь знает почему?