Мне удалось сделать тег DIV невидимым в JavaScript, задав для дисплея значение «Нет», а видимость - «Скрытый». Это может быть достигнуто с этим классом также:
.invisible {
display: none;
visibility: hidden;
}
Не отображать ничего будет означать, что поле DIV пусто, а скрытая видимость гарантирует, что он не виден. Проблема этого метода заключается в том, что когда у меня есть прокручиваемые DIV или текстовые области с переполненным содержимым, когда вы устанавливаете display: none, некоторые браузеры забывают положение прокрутки для этих элементов. Есть ли лучший способ сделать DIV невидимым без использования свойства display? Я бы предпочел не прибегать к использованию JavaScript для записи позиции прокрутки и так далее, если это возможно.
EDIT:
Мне удалось решить это с вашей помощью, я применил следующее:
.invisible {
visibility: hidden;
position: absolute;
top: -9999px;
}
.visible {
visibility: visible;
position: static;
}
Я попробовал left: -9999px, но это расширяет вертикальную полосу прокрутки в IE ... Я также обернул свою текстовую область в другой DIV и применил к ней видимые / невидимые стили, потому что в противном случае текстовая область потеряла бы свою позицию прокрутки. Я проверял это в Chrome, Firefox, IE и Safari на моем iPhone. Просто примечание: DIV, обернутый вокруг области текста, похоже, не помогает в FF, и полоса прокрутки все еще сбрасывается. Но с прокручиваемыми DIVs все в порядке. Спасибо за вашу помощь!