L'élément HTML <dialog> représente une boite de dialogue ou un composant interactif (par exemple un inspecteur ou une fenêtre).
| Catégories de contenu | Contenu de flux, racine de sectionnement. |
|---|---|
| Contenu autorisé | Contenu de flux. |
| Omission de balises | Aucune, la balise d'ouverture et la balise de fermeture sont obligatoires |
| Parents autorisés | Tout élément qui accepte du contenu de flux. |
| Rôles ARIA autorisés | alertdialog |
| Interface DOM | HTMLDialogElement |
Attributes
Cet élément inclut les attributs universels. L'attribut tabindex ne doit pas être utilisé sur l'élément <dialog>.
open- Cet attribut indique que la boîte de dialogue est active et peut être utilisée de façon interactive. Si l'attribut n'est pas renseigné, la boîte de dialogue ne doit pas être présentée à l'utilisateur.
Notes
- L'élément
<form>peut être intégré dans une boîte de dialogue en spécifiant l'attribut. Lorsqu'un formulaire de ce type est envoyé, la boîte de dialogue est fermée avec un attributmethod="dialog"returnValuemis à jour avec la valeurvaluedu bouton d'envoi utilisé. - Le pseudo-élément CSS
::backdroppeut être utilisé pour mettre en forme l'arrière plan d'un élément<dialog>. On peut par exemple estomper un contenu inaccessible pendant que la boîte de dialogue est active.
Exemples
HTML
<!-- Simple boîte de dialogue, contenant un formulaire -->
<dialog id="favDialog">
<form method="dialog">
<section>
<p><label for="favAnimal">Animal favori :</label>
<select id="favAnimal" name="favAnimal">
<option></option>
<option>Crevette de saumure</option>
<option>Panda roux</option>
<option>Singe-araignée</option>
</select></p>
</section>
<menu>
<button id="cancel" type="reset">Annuler</button>
<button type="submit">Confirmer</button>
</menu>
</form>
</dialog>
<menu>
<button id="updateDetails">Envoyer détails</button>
</menu>
<script>
(function() {
var updateButton = document.getElementById('updateDetails');
var cancelButton = document.getElementById('cancel');
// Update button opens a modal dialog
updateButton.addEventListener('click', function() {
document.getElementById('favDialog').showModal();
});
// Bouton pour fermer la boîte de dialogue
cancelButton.addEventListener('click', function() {
document.getElementById('favDialog').close();
});
})();
</script>
Résultat
Prothèse d'émulation (polyfill)
Cette prothèse peut être utilisée pour fournir un support pour les navigateurs : dialog-polyfill.
Spécifications
| Spécification | État | Commentaires |
|---|---|---|
| WHATWG HTML Living Standard La définition de '<dialog>' dans cette spécification. |
Standard évolutif | |
| HTML 5.1 La définition de '<dialog>' dans cette spécification. |
Recommendation | Définition initiale. |
Compatibilité des navigateurs
| Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Support simple | 37 | Pas de support[1] | Pas de support | 24 | Pas de support |
| Fonctionnalité | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|
| Support simple | 37 | Pas de support | Pas de support | Pas de support | Pas de support |
[1] Cf. bug 840640.
Voir aussi
- L'évènement
close - L'évènement
cancel - Guide sur les formulaires HTML

