Critères de succès WCAG · Level A

WCAG 1.3.2 : Séquence significative

Les WCAG 1.3.2 exigent que lorsque l’ordre du contenu affecte son sens, cette séquence puisse être déterminée de manière programmable afin que les technologies d’assistance puissent la présenter correctement. Le non-respect de ce critère fait que les utilisateurs de lecteurs d’écran et d’autres technologies d’assistance reçoivent le contenu dans un ordre confus ou dénué de sens.

Ce que signifie cette règle

Le critère de succès 1.3.2 des WCAG — Séquence significative (Niveau A) stipule : « Si la séquence dans laquelle le contenu est présenté affecte sa signification, une séquence de lecture correcte peut être déterminée par des moyens informatiques. » En termes simples, si l’ordre visuel du contenu de votre page porte une signification — étapes d’un processus, fil de conversation, étiquette de formulaire associée à son champ, liste numérotée — alors l’ordre sous-jacent dans le DOM doit refléter cette même séquence afin que les technologies d’assistance puissent l’exposer correctement.

L’expression clé est « si la séquence affecte sa signification ». Toutes les décisions d’ordonnancement sur une page ne sont pas concernées. Des listes décoratives de logos sans lien entre eux, par exemple, ne portent pas de signification séquentielle. Mais tout contenu pour lequel un réordonnancement changerait ce que l’utilisateur comprend — une liste d’ingrédients d’une recette suivie des instructions, un tableau de prix associé à des produits, un flux de paiement en plusieurs étapes — doit absolument avoir un ordre DOM qui correspond à l’ordre visuel significatif.

Ce qui est considéré comme une réussite : l’ordre source du DOM correspond à l’ordre logique de lecture, OU une transformation (comme du CSS qui réorganise la présentation visuelle) permet toujours de déterminer correctement la séquence de lecture par des moyens informatiques pour les technologies d’assistance. Les lecteurs d’écran qui lisent directement le DOM doivent toujours rencontrer le contenu dans l’ordre significatif correct, même lorsque le positionnement visuel en CSS diffère de l’ordre du DOM.

Ce qui est considéré comme un échec : utiliser des techniques CSS — position: absolute, propriété order de CSS Grid, propriété order de CSS Flexbox, ou mise en page multi-colonnes CSS — pour réordonner visuellement le contenu de sorte que la séquence visuelle véhicule une signification que l’ordre du DOM ne reflète pas. Un exemple classique est une barre latérale placée avant le contenu principal dans le DOM mais rendue visuellement après celui-ci, où la barre latérale contient des notes contextuelles qui n’ont de sens qu’après la lecture du texte principal.

La spécification WCAG note explicitement une exception : lorsqu’une séquence n’est pas significative, elle n’a pas besoin d’être déterminable par des moyens informatiques. De plus, le critère se concentre sur le fait que la séquence de lecture correcte soit déterminable, et non sur le fait que les ordres visuel et DOM doivent toujours être identiques — le CSS peut réordonner visuellement tant que la séquence exposée aux technologies d’assistance reste significative. Cependant, en pratique, le réordonnancement uniquement via CSS casse fréquemment la séquence pour les technologies d’assistance et doit être utilisé avec une grande prudence.

Pourquoi c’est important

Les utilisateurs de lecteurs d’écran sont le groupe le plus directement affecté. Environ 7,5 millions de personnes aux États-Unis utilisent un logiciel de lecture d’écran, et dans le monde, l’Organisation mondiale de la Santé estime que 2,2 milliards de personnes présentent une forme de déficience visuelle. Pour une personne aveugle naviguant sur une page avec NVDA, JAWS ou VoiceOver, l’expérience de lecture est entièrement déterminée par la séquence programmatique — en particulier l’ordre du DOM. Si un développeur utilise la propriété CSS order dans une mise en page Flexbox pour déplacer visuellement un message d’avertissement au-dessus d’un formulaire, mais que le DOM place cet avertissement après les champs du formulaire, un utilisateur de lecteur d’écran remplira le formulaire avant d’entendre l’avertissement. Ce n’est pas un simple désagrément ; cela peut entraîner des erreurs, des transactions échouées et une exclusion de services essentiels.

Les personnes ayant des handicaps cognitifs bénéficient également fortement d’une séquence significative. Les utilisateurs dyslexiques, ayant des troubles de l’attention ou des différences de traitement de l’information s’appuient souvent sur un flux de contenu logique et prévisible. Lorsque la hiérarchie des titres et les blocs de contenu apparaissent dans un ordre DOM brouillé, même les utilisateurs qui voient la page peuvent rencontrer des difficultés s’ils s’appuient sur le mode de lecture du navigateur, des outils de synthèse vocale ou des extensions de vue simplifiée qui suppriment le CSS et présentent le contenu brut du DOM.

Les personnes ayant un handicap moteur qui naviguent au clavier ou via un dispositif de commande par contact parcourent les éléments interactifs dans l’ordre du DOM via la touche Tab. Si un bouton de soumission apparaît avant les champs de formulaire associés dans le DOM (mais après eux visuellement), la séquence de tabulation devient confuse et propice aux erreurs.

Un scénario concret du monde réel : une page de paiement d’un site e-commerce turc utilise une mise en page CSS Grid où la propriété order déplace le panneau « Récapitulatif de commande » pour qu’il apparaisse visuellement à droite, après le formulaire de facturation. Dans le DOM, cependant, le HTML du récapitulatif de commande vient en premier. Un utilisateur avec un lecteur d’écran entend le prix total et la liste des articles avant d’entendre le formulaire de facturation — il n’a pas encore de contexte sur ce qu’il paie. Cela peut conduire à un abandon, de la confusion et des plaintes en matière d’accessibilité. En vertu des nouvelles réglementations d’accessibilité de la Turquie, un tel échec sur une plateforme commerciale constitue désormais un risque réglementaire.

Au-delà de l’accessibilité, une séquence DOM significative profite au référencement (SEO). Les robots d’indexation des moteurs de recherche lisent l’ordre du DOM de manière similaire aux lecteurs d’écran. Un DOM bien structuré qui place en premier le contenu le plus significatif — titres, contenu principal, appels à l’action clés — peut influencer positivement la façon dont les pages sont indexées et classées.

Règles axe-core associées

WCAG 1.3.2 est classé comme nécessitant un test manuel. Les outils automatisés, y compris axe-core, ne peuvent pas signaler de manière fiable les violations de séquence, car cela exigerait que l’outil comprenne la signification du contenu — en particulier, si un ordre donné de contenu change son interprétation. Il s’agit d’un jugement sémantique qu’aucun analyseur automatisé ne peut porter de manière universelle. Un outil automatisé peut détecter que le CSS a été utilisé pour réordonner visuellement des éléments, mais il ne peut pas déterminer si ce réordonnancement est significatif ou décoratif sans jugement humain.

  • Revue manuelle — ordre visuel CSS vs ordre DOM : Axe-core n’a pas de règle automatisée dédiée pour 1.3.2. Les testeurs doivent comparer manuellement le rendu visuel d’une page à son ordre source dans le DOM en désactivant le CSS et en observant si le contenu linéarisé reste compréhensible. Des outils comme l’inspecteur d’arborescence d’accessibilité intégré au navigateur ou l’option « Full Page Scan » d’axe DevTools peuvent mettre en évidence des anomalies structurelles, mais un humain doit juger si la séquence est significative.
  • Revue manuelle — propriété order de CSS Flexbox et Grid : Lorsque axe DevTools ou les DevTools du navigateur révèlent des éléments utilisant la propriété CSS order ou position: absolute/fixed pour des éléments de contenu (et non simplement décoratifs), un testeur humain doit évaluer si l’ordre visuel diverge de manière significative de l’ordre du DOM. Les outils automatisés ne signaleront pas cela comme une erreur de leur propre initiative.
  • Revue manuelle — mauvais usage de la mise en page en tableau : Les pages qui utilisent des tableaux HTML pour la mise en page visuelle (plutôt que pour des données tabulaires) peuvent amener les lecteurs d’écran à lire les cellules dans un ordre DOM qui ne correspond pas au flux de lecture prévu. Les outils automatisés peuvent signaler les tableaux de mise en page comme un problème distinct, mais l’impact sur la séquence nécessite une vérification humaine.

Comment tester

  1. Exécuter d’abord une analyse automatisée : Utilisez axe DevTools (extension de navigateur) ou Lighthouse dans Chrome DevTools pour effectuer une analyse d’accessibilité de page complète. Bien qu’aucun de ces outils ne signale directement une violation de 1.3.2, ils mettront en évidence des problèmes structurels connexes — tableaux de mise en page, ordre de titres incorrect, mauvais usage d’ARIA — qui peuvent indiquer des problèmes de séquence. Notez tout avertissement concernant l’ordre visuel ou des anomalies structurelles pour un suivi manuel.
  2. Désactiver tout le CSS et inspecter le contenu linéarisé : Dans Firefox DevTools ou Chrome DevTools, désactivez toutes les feuilles de style (ou utilisez la fonction « Disable All Styles » de l’extension Web Developer). Lisez la page de haut en bas. Demandez-vous : le contenu a-t-il toujours du sens dans cet ordre ? Pouvez-vous suivre une histoire, un formulaire ou un processus sans confusion ? Si la signification se perd, la page échoue probablement au critère 1.3.2.
  3. Inspecter directement l’ordre source du DOM : Ouvrez les DevTools, allez dans le panneau Elements/Inspector et parcourez le code HTML. Comparez la position dans le DOM de chaque bloc de contenu majeur à sa position visuelle. Portez une attention particulière aux éléments utilisant CSS Flexbox ou Grid — recherchez la propriété order dans les styles calculés et vérifiez qu’elle ne crée pas de décalage significatif de séquence.
  4. Tester avec NVDA et Firefox : Lancez NVDA, ouvrez Firefox et accédez à la page. Appuyez sur Insert + Flèche bas pour activer le mode « Tout dire » et écoutez l’intégralité de la page de haut en bas. Suivez visuellement et notez toute instance où l’ordre du contenu parlé ne correspond pas à l’ordre visuel significatif. Portez attention aux étiquettes et champs de formulaire, listes numérotées, instructions étape par étape et contenu qui fait référence à un contenu précédent.
  5. Tester avec VoiceOver et Safari (macOS/iOS) : Activez VoiceOver (Commande + F5 sur macOS). Utilisez le rotor (Contrôle + Option + U) pour naviguer par titres ou repères, et utilisez Contrôle + Option + Flèche droite pour lire linéairement la page. Notez si le contenu suit un ordre logique et significatif. Sur iOS, balayez vers la droite pour parcourir le contenu et vérifiez l’intégrité de la séquence.
  6. Tester avec JAWS et Chrome : Ouvrez JAWS avec Chrome et utilisez la commande Insert + Flèche bas « Tout dire ». Comme avec NVDA, suivez visuellement en écoutant et signalez tout contenu présenté dans un ordre non significatif. JAWS lit l’arborescence d’accessibilité, qui reflète largement l’ordre du DOM, ce qui en fait un test fiable pour les problèmes de séquence.
  7. Tester l’ordre de tabulation au clavier : Sans lecteur d’écran, appuyez simplement de manière répétée sur la touche Tab pour parcourir tous les éléments interactifs de la page. La séquence de focus doit suivre un chemin logique et significatif — généralement de gauche à droite et de haut en bas pour les écritures latines, conformément à la façon dont un utilisateur voyant lirait la page. Une séquence de tabulation qui saute de manière imprévisible entre les sections indique un problème d’ordre du DOM.

Comment corriger

Propriété order de CSS Flexbox — Incorrect

<!-- Visual order is: Warning, then Form. DOM order is reversed. -->
<div style='display: flex; flex-direction: column;'>
  <form style='order: 1;'>
    <label for='email'>Email</label>
    <input type='email' id='email' name='email' />
    <button type='submit'>Subscribe</button>
  </form>
  <div class='warning' style='order: 0;'>
    <p>Warning: You must be 18 or older to subscribe.</p>
  </div>
</div>

Propriété order de CSS Flexbox — Correct

<!-- DOM order now matches meaningful visual order: Warning first, then Form. -->
<!-- The CSS order property is removed; DOM sequence alone controls both visual and AT order. -->
<div style='display: flex; flex-direction: column;'>
  <div class='warning'>
    <p>Warning: You must be 18 or older to subscribe.</p>
  </div>
  <form>
    <label for='email'>Email</label>
    <input type='email' id='email' name='email' />
    <button type='submit'>Subscribe</button>
  </form>
</div>

Contenu positionné en absolu créant une séquence trompeuse — Incorrect

<!-- Step labels appear visually above the content boxes, but come after them in the DOM. -->
<div style='position: relative; height: 200px;'>
  <div style='position: absolute; top: 50px; left: 0;'>
    <p>Step 1: Fill in your personal details below.</p>
  </div>
  <div style='position: absolute; top: 0; left: 0;'>
    <p><strong>1</strong></p>
  </div>
</div>

Contenu positionné en absolu créant une séquence trompeuse — Correct

<!-- DOM order now reflects the meaningful reading sequence: label first, then number. -->
<!-- Absolute positioning is used only for visual refinement, not to reverse meaningful order. -->
<div style='position: relative; height: 200px;'>
  <div style='position: absolute; top: 0; left: 0;'>
    <p><strong>1</strong></p>
  </div>
  <div style='position: absolute; top: 50px; left: 0;'>
    <p>Step 1: Fill in your personal details below.</p>
  </div>
</div>

CSS Grid avec zones de contenu réordonnées — Incorrect

<!-- Sidebar (contextual notes) appears visually on the right, after main content. -->
<!-- But in the DOM it comes first, so screen readers hear sidebar notes before the article. -->
<div class='layout'>
  <aside class='sidebar'>
    <p>Note: The statistics below are sourced from the 2024 annual report.</p>
  </aside>
  <main class='content'>
    <h1>Annual Sales Overview</h1>
    <p>Total revenue grew by 23% compared to the prior year...</p>
  </main>
</div>
<!--
.layout { display: grid; grid-template-columns: 3fr 1fr; }
.sidebar { grid-column: 2; }
.main { grid-column: 1; }
-->

CSS Grid avec zones de contenu réordonnées — Correct

<!-- Main content comes first in the DOM, matching the meaningful reading order. -->
<!-- The sidebar, which annotates the main content, follows it in the DOM. -->
<!-- CSS Grid places the sidebar visually to the right without changing DOM sequence. -->
<div class='layout'>
  <main class='content'>
    <h1>Annual Sales Overview</h1>
    <p>Total revenue grew by 23% compared to the prior year...</p>
  </main>
  <aside class='sidebar'>
    <p>Note: The statistics above are sourced from the 2024 annual report.</p>
  </aside>
</div>
<!--
.layout { display: grid; grid-template-columns: 3fr 1fr; }
.content { grid-column: 1; }
.sidebar { grid-column: 2; }
-->

Erreurs courantes

  • Utiliser la propriété order de CSS Flexbox ou Grid pour réordonner visuellement des blocs de contenu significatifs sans mettre à jour l’ordre source HTML — c’est la cause la plus fréquente d’échecs au critère 1.3.2 dans le développement web moderne. Ajustez toujours d’abord l’ordre du DOM et utilisez le CSS uniquement pour affiner la présentation visuelle.
  • Placer le contenu principal <main> d’une page après un <nav> ou un <aside> dans le DOM tout en utilisant le CSS pour faire apparaître le contenu principal en premier visuellement — les lecteurs d’écran liront la navigation ou le contenu de la barre latérale avant l’article principal, perturbant la séquence significative.
  • Construire des mises en page de type magazine multi-colonnes avec des colonnes CSS ou des flottants où l’ordre du DOM parcourt les colonnes de haut en bas à l’intérieur de chaque colonne, alors que l’ordre visuel est ligne par ligne — les utilisateurs qui s’attendent à une lecture ligne par ligne (comme dans de nombreuses mises en page de contenu en grille) recevront le contenu dans une mauvaise séquence.
  • Utiliser position: absolute ou position: fixed pour tirer un récapitulatif d’erreurs de formulaire en haut de la page visuellement alors que l’élément de récapitulatif d’erreurs reste en bas du DOM — les utilisateurs de lecteurs d’écran qui soumettent un formulaire ne rencontreront le récapitulatif d’erreurs qu’une fois arrivés en bas de la page, manquant un retour d’information critique.
  • Rendre des instructions étape par étape ou des séquences numérotées avec des réinitialisations de compteurs CSS alors que l’ordre DOM des étapes ne correspond pas à l’ordre significatif — les numéros visuels peuvent sembler corrects, mais la séquence lue à voix haute sera erronée.
  • Injecter du contenu dynamique (par exemple, messages de chat, éléments de flux en direct, notifications toast) en haut d’un conteneur dans le DOM lorsque la convention visuelle affiche les éléments les plus récents en bas — ou l’inverse — sans utiliser de régions ARIA live ni ajuster le DOM pour correspondre à la séquence significative.
  • Utiliser des tableaux HTML pour la mise en page plutôt que pour des données tabulaires et placer les cellules dans un ordre DOM qui se lit colonne par colonne plutôt que ligne par ligne — les technologies d’assistance lisent les cellules de tableau dans l’ordre du DOM (ligne par ligne), de sorte que les tableaux de mise en page construits colonne par colonne seront lus dans une mauvaise séquence.
  • Compter sur JavaScript pour trier ou réordonner visuellement le contenu (par exemple, une liste de produits triable) sans mettre à jour l’ordre sous-jacent du DOM — après qu’un utilisateur a trié par prix, le lecteur d’écran peut encore annoncer les éléments dans l’ordre d’origine non trié si seules les classes CSS ou le positionnement visuel ont été mis à jour.
  • Placer des notes de bas de page ou des notes de fin dans le DOM immédiatement après le paragraphe qu’elles annotent lorsque la présentation visuelle regroupe toutes les notes en bas de page — ou l’inverse — sans s’assurer que l’ordre exposé aux technologies d’assistance est significatif pour le flux de lecture prévu.
  • Scinder une seule unité logique de contenu en positions DOM non adjacentes — par exemple, placer la balise <figcaption> d’une figure loin de son élément <figure> dans la source, ce qui amène les lecteurs d’écran à annoncer la légende hors contexte.

Lien avec les réglementations d’accessibilité de la Turquie

La Circulaire présidentielle n° 2025/10 de la Turquie, publiée au Journal officiel n° 32933 le 21 juin 2025, établit des exigences obligatoires en matière d’accessibilité web alignées sur les WCAG 2.2. Le critère WCAG 1.3.2 Séquence significative est un critère de niveau A, ce qui en fait une partie de l’ensemble de base des exigences que toutes les entités concernées doivent respecter.

La circulaire impose la conformité selon un calendrier progressif : les institutions publiques doivent atteindre la conformité dans un délai d’un an à compter de la date de publication de la circulaire, tandis que les entités du secteur privé disposent de deux ans pour se conformer.

Les types d’entités suivants sont explicitement couverts par la circulaire et doivent donc veiller à ce que tout contenu numérique et toute interface web présentent l’information dans une séquence significative déterminable par des moyens informatiques :

  • Institutions publiques et agences gouvernementales — tous les organismes gouvernementaux centraux et locaux, ministères et organisations affiliées à l’État exploitant des sites web ou des services numériques destinés au public.
  • Banques et institutions financières — y compris les portails de banque en ligne, les plateformes d’investissement et les sites web des compagnies d’assurance où le contenu séquentiel (résumés de compte, demandes de prêt étape par étape, historiques de transactions) doit être lisible dans le bon ordre par tous les utilisateurs.
  • Plateformes d’e-commerce — les listes de produits, les flux de paiement en plusieurs étapes et les séquences de confirmation de commande doivent avoir des ordres DOM qui reflètent correctement leur séquence visuelle significative, garantissant que les acheteurs aveugles et malvoyants peuvent finaliser leurs achats sans confusion induite par les technologies d’assistance.
  • Hôpitaux et prestataires de soins de santé — portails patients, systèmes de prise de rendez-vous et pages d’information médicale où la séquence des instructions, avertissements et champs de formulaire a des implications directes en matière de sécurité.
  • Entreprises de télécommunications comptant 200,000 abonnés ou plus — pages de comparaison de services, interfaces de gestion de contrat et portails d’assistance où les tableaux de tarifs et les listes de fonctionnalités doivent être présentés dans un ordre significatif et programmatique correct.
  • Agences de voyage et entreprises de transport privé — les flux de réservation, affichages d’itinéraires et interfaces de sélection de sièges reposent fortement sur la séquence visuelle (départ avant arrivée, étape 1 avant étape 2) qui doit être correctement reflétée dans le DOM.
  • Écoles privées autorisées par le ministère de l’Éducation nationale (MoNE) — les systèmes de gestion de l’apprentissage, pages de contenu de cours et portails d’inscription doivent présenter les séquences éducatives — leçons, modules, évaluations — dans un ordre déterminable par des moyens informatiques afin que les élèves utilisant des technologies d’assistance puissent suivre correctement les cours.

Le non-respect du critère WCAG 1.3.2 sur l’une de ces plateformes ne constitue pas simplement un écart par rapport aux bonnes pratiques ; en vertu de la circulaire 2025/10, il s’agit d’une non-conformité réglementaire soumise à des exigences de contrôle et de remédiation. Étant donné que les violations de 1.3.2 découlent fréquemment de techniques modernes de mise en page CSS (Flexbox, Grid) omniprésentes dans le développement web turc, les organisations devraient donner la priorité à un audit systématique de leurs modèles de mise en page et de leurs pratiques d’ordonnancement du DOM dans le cadre de leur feuille de route de conformité.