în HTML

Element nativ pentru ferestre modale, pop-up-uri și alerte, cu fundal întunecat (backdrop) și închidere din tasta Escape.

Sintaxă tag
<dialog id="fereastra">
  <p>Mesaj important</p>
  <button onclick="document.getElementById('fereastra').close()">Închide</button>
</dialog>

Ce face <dialog>

Tagul <dialog> oferă o modală nativă accesibilă direct în HTML5. Când este deschis cu metoda JavaScript dialog.showModal(), browserul întunecă automat restul paginii (pseudo-elementul CSS ::backdrop), blochează derularea și mută focusul tastaturii în interiorul ferestrei.

Tasta Escape închide automat fereastra fără cod suplimentar. Poate fi închisă și printr-un formular simplu cu <form method="dialog">.

Atribute

Atribut Descriere
open Indică faptul că fereastra modală este vizibilă și activă.

Exemple

Exemplul 1: Fereastră modală de confirmare

Se deschide cu showModal() și se închide fie din buton, fie cu tasta Escape.

<button onclick="document.getElementById('modal-stergere').showModal()">Șterge contul</button>

<dialog id="modal-stergere">
  <h3>Ești sigur?</h3>
  <p>Această acțiune este ireversibilă.</p>
  <form method="dialog">
    <button value="anuleaza">Anulează</button>
    <button value="confirma">Confirmă ștergerea</button>
  </form>
</dialog>

Ce afișează browserul

Un buton „Șterge contul” care deschide o fereastră centrată cu fundal estompat și opțiunile de confirmare.

Greșeli frecvente

  • Deschiderea dialogului adăugând manual atributul open prin JavaScript în loc să apelezi metoda nativă showModal(); dacă adaugi doar open, nu beneficiezi de backdrop și de blocarea tastaturii în modal.

Comenzi înrudite

  • <details> și <summary>: Creează un element nativ de tip acordeon: conținutul este ascuns și se extinde doar când utilizatorul apasă pe summary.
  • <button>: Element clicabil pentru declanșarea trimiterii formularelor sau a unor acțiuni JavaScript în pagină.
  • <form>: Containerul principal pentru colectarea datelor de la utilizator și trimiterea lor către un server.