logo oujood
🔍

  Balise HTML5 <command> — Référence complète et historique

Référence pédagogique sur la balise <command> HTML5 : syntaxe, attributs, exemples commentés et statut de compatibilité en 2026.

OUJOOD.COM

Définition et historique de la balise <command> en HTML5

LES BALISES HTML

La balise <command> a été introduite dans la spécification HTML5 pour permettre de définir une commande interactive que l'utilisateur peut déclencher depuis l'interface — sous la forme d'un bouton de commande, d'une case à cocher (checkbox) ou d'un bouton radio. Cette balise visait à standardiser les éléments d'interaction dans les menus contextuels HTML natifs et les barres d'outils.

⚠️ Mise à jour 2026 — Statut obsolète : La balise <command> a été retirée de la spécification HTML living standard par le WHATWG. Elle n'a jamais été implémentée que dans Internet Explorer 9 et est aujourd'hui totalement abandonnée par tous les navigateurs modernes (Chrome, Firefox, Safari, Edge). Pour des fonctionnalités équivalentes, il convient d'utiliser les éléments <button>, <input type="checkbox">, <input type="radio"> ou l'API Web Components.

Une commande pouvait être intégrée dans un menu contextuel ou une barre d'outils via l'élément <menu>, ou placée n'importe où dans la page pour définir un raccourci clavier natif. L'élément <command> est un élément vide (void element) : il possède une balise ouvrante mais ne doit pas avoir de balise fermante.

Exemple de base — Utilisation de <command> dans un menu

L'exemple ci-dessous montre la syntaxe HTML5 originale de la balise <command> associée à un élément <menu>. Ce code n'est plus fonctionnel dans les navigateurs modernes en 2026, mais reste utile à des fins pédagogiques et historiques.

  📋 Copier le code

<!DOCTYPE html>
<html lang="fr">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <title>Démonstration balise command HTML5</title>
  <script>
    // Fonction déclenchée par la commande <command> au clic
    function save() {
      alert("Action de sauvegarde déclenchée par <command>");
    }
  </script>
</head>
<body>
  <menu>
    <!-- Commande de type "command" : bouton d'action simple -->
    <command type="command" label="Enregistrer" onclick="save()">
  </menu>
  <p><strong>Note historique :</strong> La balise &lt;command&gt; n'a été
  prise en charge que dans IE9 et est obsolète en 2026.</p>
</body>
</html>

Compatibilité navigateurs — Statut 2026

Internet ExplorerFirefoxOperaGoogle ChromeSafari

La balise <command> n'a jamais été prise en charge que par Internet Explorer 9 (partiellement). En 2026, elle est absente de tous les navigateurs modernes : Chrome, Firefox, Safari, Edge, Opera. Le WHATWG a officiellement supprimé cet élément du standard HTML.

Différence entre HTML 4.01 et HTML5 — Contexte historique

La balise <command> est une nouveauté HTML5 sans équivalent en HTML 4.01. Elle faisait partie des ambitions d'HTML5 pour enrichir les interfaces utilisateur natives dans le navigateur. Faute d'adoption par les éditeurs de navigateurs, elle n'a jamais atteint le statut de recommandation stable et a été abandonnée.

Attributs de la balise <command>

Nouveau : Tous les attributs ci-dessous sont des nouveautés HTML5, désormais sans effet dans les navigateurs modernes.

Attribut

Valeur

Description

checked Nouveau

checked

Spécifie que la commande est cochée au chargement. Uniquement pour type="radio" ou type="checkbox"

disabled Nouveau

disabled

Spécifie que la commande est désactivée et non interactive

icon Nouveau

URL

URL d'une image représentant visuellement la commande dans le menu

label Nouveau

texte

Obligatoire. Texte affiché à l'utilisateur pour identifier la commande

radiogroup Nouveau

GroupName

Nom du groupe de boutons radio auquel appartient la commande. Uniquement pour type="radio"

type Nouveau

checkbox
command
radio

Définit le comportement interactif de la commande

Attributs globaux

La balise <command> supportait également les attributs globaux HTML.

Attributs d'événement

La balise <command> supportait également les attributs d'événement HTML.

Attribut checked de <command>

Définition et utilisation de l'attribut checked

L'attribut checked est un attribut booléen HTML5. Lorsqu'il est présent, il indique que la commande doit être présélectionnée au chargement de la page, de la même façon qu'un <input type="checkbox" checked>.

Remarque : L'attribut checked ne peut être utilisé qu'avec type="checkbox" ou type="radio". Il est ignoré pour type="command".

Syntaxe

<command checked="checked">

Formes équivalentes acceptées en HTML5 :

<command checked>

<command checked="checked">

<command checked="">

Exemple — Commande radio présélectionnée avec checked

Cet exemple illustre comment définir un bouton radio présélectionné par défaut dans un menu contextuel HTML5 grâce à l'attribut checked.

  📋 Copier le code

<menu>
  <!-- Type radio + checked : bouton sélectionné par défaut -->
  <command type="radio" label="Aligner à gauche"
    checked="checked" onclick="setAlign('left')">
  <command type="radio" label="Aligner à droite"
    onclick="setAlign('right')">
</menu>

Compatibilité navigateurs — attribut checked

Internet ExplorerFirefoxOperaGoogle ChromeSafari

L'attribut checked n'est pris en charge par aucun navigateur moderne. En 2026, utilisez <input type="radio" checked> ou <input type="checkbox" checked> pour obtenir un comportement équivalent.

Attribut disabled de <command>

Définition et utilisation de l'attribut disabled

L'attribut disabled est un attribut booléen qui, lorsqu'il est présent, désactive l'élément de commande et le rend non interactif pour l'utilisateur. C'est l'équivalent du disabled sur un élément <button> ou <input>.

Syntaxe

<command disabled="disabled">

Formes équivalentes acceptées :

<command disabled>

<command disabled="disabled">

<command disabled="">

Exemple — Commande désactivée avec l'attribut disabled

L'attribut disabled empêche l'utilisateur d'interagir avec la commande. Dans les interfaces modernes, ce comportement est reproduit avec <button disabled>.

  📋 Copier le code

<menu>
  <!-- La commande "Centre" est désactivée : non cliquable -->
  <command type="radio" label="Centrer"
    disabled="disabled" onclick="setAlign('center')">
</menu>

Compatibilité navigateurs — attribut disabled

Internet ExplorerFirefoxOperaGoogle ChromeSafari

L'attribut disabled n'était pris en charge que par Internet Explorer 9. En 2026, utilisez <button disabled> ou pointer-events: none en CSS pour reproduire cet effet.

Attribut icon de <command>

Définition et utilisation de l'attribut icon

L'attribut icon permettait de définir une image représentant visuellement la commande dans le menu contextuel, à la manière d'une icône dans une barre d'outils classique. Il accepte une URL absolue ou relative pointant vers un fichier image.

Syntaxe

<command icon="URL">

Valeur

Description

URL absolue

Pointe vers une image externe — ex. : icon="https://example.com/save.png"

URL relative

Pointe vers un fichier local — ex. : icon="images/save.png"

Exemple — Commande avec icône via l'attribut icon

  📋 Copier le code

<menu>
  <!-- Icône affichée à côté du label dans le menu contextuel -->
  <command type="radio" label="Aligner à gauche"
    icon="images/align-left.png" onclick="setAlign('left')">
</menu>

Compatibilité navigateurs — attribut icon

Internet ExplorerFirefoxOperaGoogle ChromeSafari

L'attribut icon n'a jamais été implémenté dans les navigateurs. En 2026, pour afficher une icône dans un bouton, utilisez <button><img src="..." alt=""> Label</button> ou des icônes SVG/CSS.

Attribut label de <command>

Définition et utilisation de l'attribut label

L'attribut label est obligatoire pour la balise <command>. Il définit le texte affiché à l'utilisateur pour identifier la commande dans le menu ou la barre d'outils. Sans cet attribut, la commande n'a aucune représentation visuelle.

Syntaxe

<command label="texte affiché">

Valeur

Description

texte

Texte visible affiché à l'utilisateur comme libellé de la commande

Exemple — Commande avec label explicite

  📋 Copier le code

<menu>
  <!-- label="Enregistrer" : texte affiché dans le menu -->
  <command type="command" label="Enregistrer" onclick="save()">
</menu>

Compatibilité navigateurs — attribut label

Internet ExplorerFirefoxOperaGoogle ChromeSafari

L'attribut label n'est pris en charge par aucun navigateur moderne en 2026. L'attribut aria-label sur un <button> est l'alternative recommandée pour l'accessibilité.

Attribut radiogroup de <command>

Définition et utilisation de l'attribut radiogroup

L'attribut radiogroup spécifie le nom du groupe de boutons radio auquel appartient la commande. Toutes les commandes partageant le même radiogroup fonctionnent de manière exclusive : activer l'une désactive les autres du même groupe. Cet attribut n'est valide que pour type="radio".

Remarque : Cet attribut ne fonctionne qu'avec type="radio".

Syntaxe

<command radiogroup="nomdugroupe">

Valeur

Description

GroupName

Nom du groupe de boutons radio mutuellement exclusifs

Exemple — Groupe de commandes radio avec radiogroup

Cet exemple illustre un groupe de trois commandes radio mutuellement exclusives permettant de choisir l'alignement du texte.

  📋 Copier le code

<menu>
  <!-- Groupe "alignment" : une seule option active à la fois -->
  <command type="radio" label="Gauche"
    radiogroup="alignment" onclick="setAlign('left')">
  <command type="radio" label="Centre"
    radiogroup="alignment" onclick="setAlign('center')">
  <command type="radio" label="Droite"
    radiogroup="alignment" onclick="setAlign('right')">
</menu>

Compatibilité navigateurs — attribut radiogroup

Internet ExplorerFirefoxOperaGoogle ChromeSafari

L'attribut radiogroup n'est implémenté dans aucun navigateur. Pour un comportement équivalent, utilisez <input type="radio" name="alignment">.

Attribut type de <command>

Définition et utilisation de l'attribut type

L'attribut type est le principal attribut de comportement de la balise <command>. Il détermine comment la commande s'affiche et interagit avec l'utilisateur. Il accepte trois valeurs distinctes correspondant aux trois modes d'interaction classiques des interfaces graphiques.

Syntaxe

<command type="command|checkbox|radio">

Valeur

Description

command

Valeur par défaut. Commande simple déclenchant une action unique au clic — équivalent d'un <button>

checkbox

Commande à état (activé/désactivé) — équivalent d'un <input type="checkbox">

radio

Commande à sélection exclusive dans un groupe — équivalent d'un <input type="radio">

Exemple — Les trois types de <command>

Cet exemple compare les trois valeurs possibles de l'attribut type pour illustrer leur comportement respectif.

  📋 Copier le code

<menu>
  <!-- type="command" : action simple, déclenche save() -->
  <command type="command" label="Enregistrer" onclick="save()">
  <!-- type="checkbox" : état activé/désactivé -->
  <command type="checkbox" label="Mode sombre" onclick="toggleDark()">
  <!-- type="radio" : sélection exclusive dans un groupe -->
  <command type="radio" label="Vue grille"
    radiogroup="view" onclick="setView('grid')">
</menu>

Compatibilité navigateurs — attribut type

Internet ExplorerFirefoxOperaGoogle ChromeSafari

L'attribut type n'était pris en charge que par Internet Explorer 9, et uniquement pour la valeur command. En 2026, aucun navigateur moderne ne supporte cet attribut ni la balise parente.

Alternatives modernes à la balise <command> en 2026

Puisque la balise <command> est obsolète et non supportée, voici les équivalents HTML5/HTML living standard recommandés pour chaque cas d'usage :

  📋 Copier le code

<!-- Remplacement de type="command" : bouton d'action -->
<button type="button" onclick="save()">Enregistrer</button>
<!-- Remplacement de type="checkbox" : case à cocher -->
<label>
  <input type="checkbox" onchange="toggleDark(this.checked)">
  Mode sombre
</label>
<!-- Remplacement de type="radio" + radiogroup : boutons radio groupés -->
<fieldset>
  <legend>Alignement</legend>
  <label><input type="radio" name="alignment" value="left"
    onchange="setAlign('left')"> Gauche</label>
  <label><input type="radio" name="alignment" value="center"
    onchange="setAlign('center')"> Centre</label>
  <label><input type="radio" name="alignment" value="right"
    onchange="setAlign('right')"> Droite</label>
</fieldset>

Retour à l'accueil du site

Par carabde | Mis à jour le 23 février 2026