Curso gratuito de CSS
TÉCNICA H <dialog> pantalla completa — showModal() + focus trap nativo del navegador
Tierra Studio
Técnica H — Dialog

<dialog>
pantalla
completa

El elemento <dialog> con showModal() crea un menú de pantalla completa con gestión de foco nativa. El backdrop y el Escape son automáticos.

showModal() vs show()
showModal() crea un modal verdadero con focus trap: el foco queda atrapado dentro del diálogo. show() es no-modal.
::backdrop
El pseudoelemento ::backdrop permite estilizar el fondo detrás del dialog — no necesita overlay extra.
Escape gratis
Al pulsar Escape, el navegador cierra el dialog automáticamente. Sin eventos JS extra.
<!-- HTML -->
<dialog id="nav-dialog">
  ...links...
</dialog>

/* CSS — pantalla completa + entrada animada */
#nav-dialog {
  border: none; margin: 0;
  width: 100%; height: 100%; max-width: 100%;
  animation: dialogOpen 0.4s ease;
}
#nav-dialog::backdrop {
  background: rgba(0,0,0,0.5);
  backdrop-filter: blur(4px);
}

// JS
function openNav() {
  document.getElementById('nav-dialog').showModal();
}
function closeNav() {
  document.getElementById('nav-dialog').close();
}
// Escape key closes it automatically — no JS needed