<menuitem>

Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

L'élément HTML <menuitem> représente une commande qu'un utilisateur peut utilisé via un menu contextuel ou un menu rattaché à un bouton.

Une commande peut être définie explicitement, avec un texte voire une icône ou bien faire référence à une commande décrite dans un autre élément. Une commande peut prendre la forme d'une case à cocher ou d'un groupe de boutons radio.

Catégories de contenu Aucune.
Contenu autorisé Aucun, c'est un élément vide.
Omission de balises Cet élément doit avoir une balise ouvrante et ne doit pas avoir de balise fermante.
Parents autorisés Un élément <menu> lorsque son attribut vaut type ou que cet élément <menu> est lui même le fils d'un élément <menu>.
Rôles ARIA autorisés Aucun.
Interface DOM HTMLMenuItemElement

Attributs

Cet élément inclut également les attributs universels et notamment title qui peut être utilisé afin de décrire une commande ou pour fournir des indications quant à l'utilisation de celle-ci.

checked
Un attribut booléen qui indique si la commande est sélectionné. Cet attribut peut uniquement être utilisé lorsque l'attribut type vaut checkbox ou radio.
command
Cet attribut définit l'identifiant d'un autre élément qui indique une commande invoquée indirectement. Cet attribut ne peut pas être utilisé si les attributs checked, disabled, icon, label, radiogroup ou type sont utilisés.
default
Un attribut booléen qui indique la commande par défaut du menu.
disabled
Un attribut booléen qui indique que la commande n'est pas disponible dans l'état actuel. On notera que disabled est sémantiquement différent de hidden.
icon
Une URL vers image qui représente la commande.
label
Le nom de la commande affiché pour l'utilisateur. Cet attribut est obligatoire lorsque l'attribut command est absent.
radiogroup
Cet attribut indique le nom d'un groupe de commandes étant des boutons radio. Cet attribut peut uniquement être utilisé lorsque type vaut radio.
type
Cet attribut indique le type de commande dans le menu. C'est un attribut à valeur contrainte qui peut prendre une des valeurs suivantes :
  • command : une commande associée à une action donnée. C'est la valeur par défaut de l'attribut.
  • checkbox : une commande qui peut avoir un état parmi deux états différents.
  • radio : une commande qui représente une sélection au sein d'un groupe de commandes qui sont des boutons radio.

Exemples

HTML

<!-- Un élément <div> avec un menu contextuel -->
<div contextmenu="popup-menu">
  Effectuez un clic-droit pour voir le menu contextuel
</div>

<menu type="context" id="popup-menu">
  <menuitem type="checkbox" onclick="toggleOption()" checked="true">
    Case à cocher
  </menuitem>
  <menuitem type="command" label="Command" icon="icon.png" onclick="doSomething()">
    Case à cocher
  </menuitem>
  <menuitem type="radio" name="group1" onclick="option()" checked="true">
    Bouton radio 1
  </menuitem>
  <menuitem type="radio" name="group1" onclick="option()">
    Bouton radio 2
  </menuitem>
</menu>

CSS

div {
  width: 300px;
  height: 80px;
  background-color: lightgreen;
}

Résultat

Spécifications

Spécification État Commentaires
WHATWG HTML Living Standard
La définition de '<menuitem>' dans cette spécification.
Standard évolutif  
HTML5.1
La définition de '<menuitem>' dans cette spécification.
Recommendation Définition initiale.

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Edge Internet Explorer Opera Safari
Support simple Pas de support[1] 8 (8)[2] Pas de support Pas de support (Oui)[3] ?
Fonctionnalité Android Firefox Mobile (Gecko) Edge IE Mobile Opera Mobile Safari Mobile
Support simple Pas de support 8.0 (8) ? Pas de support Pas de support Pas de support

[1] La fonctionnalité peut être activée à la compilation avec l'option --enable-blink-features=ContextMenu (cf. le bug Chromium correspondant).

[2] Seuls les éléments <menuitems> contenus dans un élément <menu> et affectés à un autre élément via l'attribut contextmenu fonctionnent.

[3] Cette fonctionnalité est uniquement implémentée via la préférence Activer les fonctionnalités expérimentales de la plate-forme Web et ne prend en charge que le type "command".

Voir aussi

Étiquettes et contributeurs liés au document

Étiquettes : 
 Contributeurs à cette page : SphinxKnight, tregagnon, Delapouite
 Dernière mise à jour par : SphinxKnight,