(Esta es una pregunta de varias partes, haré todo lo posible para resumir el escenario).
Actualmente estamos creando una aplicación web receptiva (lector de noticias) que permite a los usuarios deslizarse entre contenido con pestañas, así como desplazarse verticalmente dentro de cada contenido con pestañas.
Un enfoque común al problema es tener un contenedor div
que llene la ventana gráfica del navegador, configurado overflow
en hidden
o auto
, luego se desplace horizontal y / o verticalmente dentro de él.
Este enfoque es excelente, pero tiene un inconveniente principal: dado que la altura del documento es exactamente la misma que la del visor del navegador, el navegador móvil no ocultará la barra de direcciones / menú de navegación .
Existen numerosos hacks y propiedades de viewport que nos permiten obtener más espacio en pantalla, pero ninguno es tan efectivo como minimal-ui
(introducido en iOS 7.1).
Ayer llegaron noticias de que iOS 8 beta4 se había eliminado minimal-ui
de Mobile Safari (consulte la sección Webkit en las Notas de la versión de iOS 8 ), lo que nos dejó preguntándonos:
Q1. ¿Todavía es posible ocultar la barra de direcciones en Mobile Safari?
Hasta donde sabemos, iOS 7 ya no responde al window.scrollTo
hack, esto sugiere que tenemos que vivir con el espacio de pantalla más pequeño, a menos que adoptemos un diseño o uso vertical mobile-web-app-capable
.
Q2 ¿Todavía es posible tener una experiencia similar de pantalla completa suave?
Por pantalla completa suave quiero decir realmente sin usar la mobile-web-app-capable
etiqueta meta.
Nuestra aplicación web está diseñada para ser accesible, cualquier página se puede marcar o compartir usando el menú del navegador nativo. Al agregar, mobile-web-app-capable
evitamos que los usuarios invoquen dicho menú (cuando se guarda en la pantalla de inicio), lo que confunde y antagoniza a los usuarios.
minimal-ui
solía ser el término medio, ocultando el menú de forma predeterminada pero manteniéndolo accesible con un toque , aunque Apple podría haberlo eliminado debido a otras preocupaciones de accesibilidad (como usuarios que no saben dónde tocar para activar el menú).
Q3. ¿Vale la pena una experiencia de pantalla completa?
Parece que una API de pantalla completa no llegará a iOS en el corto plazo, pero incluso si es así, no veo cómo se mantendrá accesible el menú (lo mismo ocurre con Chrome en Android).
En este caso, tal vez deberíamos dejar el safari móvil como está, y tener en cuenta la altura de la ventana gráfica (para iPhone 5+, es 460 = 568 - 108, donde 108 incluye la barra del sistema operativo, la barra de direcciones y el menú de navegación; para iPhone 4 o mayor, es 372).
Me encantaría escuchar algunas alternativas (además de crear una aplicación nativa).