iOS Проблема с мобильной навигационной панелью Safari / панелью инструментов при изменении ориентации - PullRequest
0 голосов
/ 12 февраля 2020

Я вижу странное поведение с iOS мобильным сафари 13.3.

У меня есть веб-сайт для большинства, приложение на одну страницу. Поэтому я сохраняю его высоту / ширину на 100% и корректирую содержание, чтобы соответствовать. На других браузерах / устройствах все работает нормально, но iOS Safari показывает проблему при переключении с портретного на альбомное и затем обратно на портретное.

Я считаю, что проблема связана с панелью навигации / панелью инструментов и с тем, как, когда она скрывается, увеличивается область просмотра. При тестировании на iPhone 8 Plus, когда я загружаю страницу и отображаются полосы, я вижу высоту 622 пикселей. Когда я поворачиваюсь в ландшафт, высота 414 пикселей. Когда я поворачиваюсь назад в портрет, полосы скрыты (или уменьшены для панели навигации), но высота все еще составляет 622 пикселя. Это оставляет большой пробел в нижней части страницы. window.innerHeight считает, что это 622px. Если я открываю и закрываю панель навигации, то вид настраивается так, как я ожидал; высота 697px.

Если я использую 100vh вместо 100%, страница простирается за решеткой.

Любые советы или объяснения были бы хорошими!

При начальной загрузке:

On initial load

После переключения в альбомную и затем в портретную ориентацию:

After switching to landscape and then portrait again

...