--- title: ': O elemento Dialog' slug: Web/HTML/Element/dialog tags: - Diálogo - Elemento - Elemento Interativos HTML - Experimental - HTML - Referências - Web translation_of: Web/HTML/Element/dialog ---

O elemento HTML <dialog> representa uma caixa de diálogo ou outro componente interativo, tal como um inspetor ou janela.

Categorias de conteúdo Flow content, sectioning root
Permitted content Flow content
Tag omission {{no_tag_omission}}
Permitted parents Qualquer elemento que aceite flow content
Permitted ARIA roles {{ARIARole("alertdialog")}}
DOM interface {{domxref("HTMLDialogElement")}}

Atributos

Este elemento inclui os atributos globais. O atributo tabindex não deve ser utilizado no elemento <dialog>.

{{htmlattrdef("open")}}
Indica que o Dialog está ativo e pronto para uso. Quando o atributo open não for definido, ele não deve ser mostrado ao usuário.

Notas de uso

Exemplos

Exemplo simples

<dialog open>
  <p>Olá para todos!</p>
</dialog>

Exemplo Avançado

Este exemplo abre uma caixa de diálogo contendo um formulário quando o botão "Update details" é clicado.

HTML

<!-- Um dialog simples contendo um form -->
<dialog open id="favDialog">
  <form method="dialog">
    <section>
      <p><label for="favAnimal">Favorite animal:</label>
      <select id="favAnimal">
        <option></option>
        <option>Brine shrimp</option>
        <option>Red panda</option>
        <option>Spider monkey</option>
      </select></p>
    </section>
    <menu>
      <button id="cancel" type="reset">Cancel</button>
      <button type="submit">Confirm</button>
    </menu>
  </form>
</dialog>

<menu>
  <button id="updateDetails">Update details</button>
</menu>

JavaScript

(function() {
  var updateButton = document.getElementById('updateDetails');
  var cancelButton = document.getElementById('cancel');
  var favDialog = document.getElementById('favDialog');

  // O botão Update abre uma Dialog
  updateButton.addEventListener('click', function() {
    favDialog.showModal();
  });

  // O botão cancelButtom fecha uma Dialog
  cancelButton.addEventListener('click', function() {
    favDialog.close();
  });
})();

Resultado

{{EmbedLiveSample("Advanced_example", "100%", 300)}}

Especificações

Especificação Status Comentário
{{SpecName('HTML WHATWG', 'forms.html#the-dialog-element', '<dialog>')}} {{Spec2('HTML WHATWG')}}
{{SpecName('HTML5.2', 'interactive-elements.html#the-dialog-element', '<dialog>')}} {{Spec2('HTML5.2')}} Difinição inicial

Compatibilidade com navegadores

{{Compat("html.elements.dialog")}}

Polyfills

Inclua este polyfill para suportar browsers antigos.

dialog-polyfill

Veja também

{{HTMLRef}}