Trier des photos par glisser-déposer, réordonner des lignes dans un tableau de bord, ajuster une valeur avec un curseur qu’on fait glisser : ces interactions sont devenues si naturelles à la souris qu’on oublie qu’elles reposent sur une combinaison de gestes précis — appui maintenu, déplacement continu, relâchement au bon endroit — difficile ou impossible à réaliser pour une personne avec un tremblement, une amplitude de mouvement réduite, ou qui navigue au clavier ou par commande vocale.
C’est ce que couvre le critère 2.5.7 « Mouvements de glisser » de WCAG 2.2, niveau AA : toute fonctionnalité qui utilise un geste de glisser doit pouvoir être réalisée avec une action simple, comme un clic ou un appui, sauf si le glisser est essentiel à la fonction ou déterminé par l’agent utilisateur et non par l’auteur du contenu. Ce billet explique ce que couvre précisément ce critère et comment lui donner une alternative au clic, sans entrer dans le cas particulier du réordonnancement des blocs Gutenberg, traité juste après dans un retour d’expérience dédié.
Ce que le critère couvre, et ce qu’il ne couvre pas
Le champ d’application du critère 2.5.7 est précis. Il vise les fonctionnalités qui reposent sur un mouvement de glisser comme unique moyen d’accomplir une action : réordonner une liste, ajuster un curseur de plage (<input type="range"> personnalisé), déplacer un élément entre deux zones. Il ne s’applique pas quand le glisser est indispensable à la nature même de la fonctionnalité — un logiciel de dessin où glisser est l’action de tracer un trait, par exemple — ni quand le mouvement est géré par le système d’exploitation ou le navigateur plutôt que par le code du site, comme le défilement natif d’une page.
Fonctionnement interne : ce qu’implique une alternative
Fournir une alternative ne veut pas dire supprimer le glisser-déposer, qui reste une interaction rapide et appréciée à la souris. Cela veut dire qu’il doit exister, en parallèle, un chemin qui n’exige aucun geste de glisser. Concrètement, pour les trois cas les plus fréquents en WordPress :

- Réordonnancement de liste : ajouter, à côté de chaque élément, deux boutons « monter » et « descendre » (ou un menu contextuel « déplacer vers »), activables au clic ou à l’appui, en plus du glisser existant.
- Curseur de plage : s’assurer que l’élément est un véritable
<input type="range">natif ou un composant qui répond aux flèches du clavier, sans se limiter à un curseur qu’on ne peut faire bouger qu’en le tirant à la souris. - Déplacement entre zones (par exemple un tableau kanban de tâches) : proposer un menu ou un raccourci clavier qui accomplit le même déplacement sans glisser, par exemple « Déplacer dans la colonne suivante ».
Cas d’usage : un widget de réorganisation de galerie
Sur un plugin maison qui permet de réorganiser l’ordre des images d’une galerie par glisser-déposer, la mise en conformité a consisté à ajouter, sur chaque vignette, un bouton discret (visible au focus clavier et à la souris) ouvrant un petit menu avec les options « Déplacer au début », « Déplacer d’un rang vers la gauche », « Déplacer d’un rang vers la droite », « Déplacer à la fin ». Le glisser-déposer à la souris reste disponible et inchangé pour qui le préfère ; le menu couvre exactement la même fonction pour qui ne peut pas ou ne veut pas glisser.
<li class="galerie-item" data-position="3">
<img src="photo-3.jpg" alt="Vue du chantier, façade nord">
<button
class="galerie-item__menu-deplacer"
aria-haspopup="menu"
aria-label="Déplacer cette image">
⋮
</button>
</li>
Pièges fréquents
Le piège le plus courant consiste à croire qu’ajouter une poignée de glisser plus grande, ou un retour visuel plus net pendant le glissement, suffit à répondre au critère. Ce n’est pas le cas : le critère porte sur l’existence d’une alternative sans geste de glisser, pas sur l’ergonomie du glisser lui-même. Un autre piège fréquent est d’oublier les curseurs de plage personnalisés utilisés dans les réglages de thème ou les blocs Gutenberg (opacité d’une superposition, largeur d’une colonne) : s’ils ne répondent pas aux flèches du clavier une fois focalisés, ils échouent au critère même s’ils semblent, à la souris, parfaitement fonctionnels.
En résumé
Le critère 2.5.7 ne demande pas de renoncer au glisser-déposer, mais d’y adosser systématiquement une alternative activable au clic ou à l’appui — boutons de déplacement, menu contextuel, ou simple support natif des flèches du clavier sur un curseur. La vérification la plus rapide reste de se poser une question simple pour chaque fonctionnalité de glisser du site : « puis-je faire la même chose sans jamais maintenir le bouton de la souris enfoncé ? ». Si la réponse est non, le critère n’est pas respecté.