<dialog>: O Elemento DIALOG

Última atualização: 2026-10-13

<dialog>O Elemento DIALOG

Representa uma caixa de diálogo ou modal, aberta via showModal()/show() em JavaScript.

CategoriaSemântico
Modelo de ConteúdoConteúdo de fluxo
Pais PermitidosQualquer elemento que aceite conteúdo de fluxo
Tag de FechamentoSim — requer fechamento </dialog> tag
StatusPadrão

📝 Sintaxe

<dialog>conteúdo do diálogo</dialog>

▶ Exemplo

Edite o código abaixo e veja o resultado em tempo real no playground:

🌐 Suporte de Navegadores

Navegador ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
<dialog> ✓ v1 ✓ v12 ✓ v1 ✓ v1 ✓ v1
Suportado em todos os navegadores principais
Dica: showModal() dá um modal nativo (fundo + Esc para fechar); o atributo open mostra sem modal.

❓ Perguntas Frequentes

QQual é a diferença entre dialog e uma camada flutuante com div?
A<dialog> é o elemento nativo de diálogo modal: aberto com showModal(), já vem com renderização no topo (acima de tudo), contenção de foco e fechamento com Esc, sem precisar escrever z-index nem armadilha de foco. Com div, tudo isso precisa ser implementado à mão.
QQual é a diferença entre showModal e show?
AshowModal() abre um diálogo modal: com camada de fundo, bloqueando o restante da página e fechando com Esc; show() abre um diálogo não modal: sem camada de fundo, o usuário continua interagindo com outras partes da página. Ambos fecham com close().
Qdialog permite estilização via CSS?
ASim. A camada de fundo é estilizada pelo pseudoelemento ::backdrop, e o corpo do diálogo se estiliza normalmente. Atenção: o display é controlado pelo estado open — ao personalizar, não sobrescreva a lógica de exibição de dialog[open].
Mais estudos de caso em breve — volte mais tarde.

📚 Tutoriais Relacionados

Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%