UUV a11y
@uuv/a11y
est la partie de la solution @uuv
utilisée pour effectuer des contrôles d'accessibilité automatisés afin de garantir la non-régression.
RGAA
Légende
✔️
: La règle est implémentée de manière automatisée
📆
: L'implémentation de la règle est programmée
⚠️
: La règle est partiellement implémentée
🖐️
: Les noeuds du DOM sont collectés pour une analyse manuelle
❌
: La règle ne sera pas implémentée
1. Images ✔️ 7%
⚠️ 1
📆 34
❌ 1
La différence entre une image décorative et une image porteuse d'informations étant subjective (comme précisé sur par le W3C), nous avons choisi de définir une image porteuse d'informations comme une image ayant une alternative textuelle pour favoriser l'automatisation des contrôles.
Pour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
-
1.1
✔️ 50%
⚠️ 1
📆 3
❌ 1
Chaque image porteuse d’information a-t-elle une alternative textuelle ?
-
1.1.1
✔️ 1
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque image (balise `<img>` ou balise possédant l’attribut WAI-ARIA `role="img"`) porteuse d’information a-t-elle une alternative textuelle ?
-
1.1.2
✔️ 1
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque zone d’une image réactive (balise `<area>`) porteuse d’information a-t-elle une alternative textuelle ?
-
1.1.3
✔️ 1
Chaque bouton de type `image` (balise `<input>` avec l’attribut `type="image"`) a-t-il une alternative textuelle ?
-
1.1.4
📆
Chaque zone cliquable d’une image réactive côté serveur est-elle doublée d’un mécanisme utilisable quel que soit le dispositif de pointage utilisé et permettant d’accéder à la même destination ?
-
1.1.5
✔️ 1
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque image vectorielle (balise `<svg>`) porteuse d’information, vérifie-t-elle ces conditions ?
La balise `<svg>` possède un attribut WAI-ARIA `role="img"` ;
La balise `<svg>` a une alternative textuelle. -
1.1.6
⚠️ 1
❌
attentionnous considérons comme adjacent, le bouton et le lien url accessible avec une tabulation ou une tabulation arrière
dangerVérifier de votre côté la règle : Soit un mécanisme permet à l'utilisateur de remplacer l'élément
<object>
par un contenu alternatif.Chaque image objet (balise `<object>` avec l’attribut `type="image/…"`) porteuse d’information, vérifie-t-elle une de ces conditions ?
La balise `<object>` possède une alternative textuelle et un attribut `role="img"` ;
L’élément `<object>` est immédiatement suivi d’un lien ou bouton adjacent permettant d’accéder à un contenu alternatif ;
Un mécanisme permet à l’utilisateur de remplacer l’élément `<object>` par un contenu alternatif. -
1.1.7
📆
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque image embarquée (balise `<embed>` avec l’attribut `type="image/…"`) porteuse d’information, vérifie-t-elle une de ces conditions ?
La balise `<embed>` possède une alternative textuelle et un attribut `role="img"` ;
L’élément `<embed>` est immédiatement suivi d’un lien ou bouton adjacent permettant d’accéder à un contenu alternatif ;
Un mécanisme permet à l’utilisateur de remplacer l’élément `<embed>` par un contenu alternatif. -
1.1.8
📆
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque image bitmap (balise `<canvas>`) porteuse d’information, vérifie-t-elle une de ces conditions ?
La balise `<canvas>` possède une alternative textuelle et un attribut `role="img"` ;
Un contenu alternatif est présent entre les balises `<canvas>` et `</canvas>` ;
L’élément `<canvas>` est immédiatement suivi d’un lien ou bouton adjacent permettant d’accéder à un contenu alternatif ;
Un mécanisme permet à l’utilisateur de remplacer l’élément `<canvas>` par un contenu alternatif.
-
-
1.2
✔️ 0%
📆 6
Chaque image de décoration est-elle correctement ignorée par les technologies d’assistance ?
-
1.2.1
📆
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque image (balise `<img>`) de décoration, sans légende, vérifie-t-elle une de ces conditions ?
La balise `<img>` possède un attribut `alt` vide (`alt=""`) et est dépourvue de tout autre attribut permettant de fournir une alternative textuelle ;
La balise `<img>` possède un attribut WAI-ARIA `aria-hidden="true"` ou `role="presentation"`. -
1.2.2
📆
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque zone non cliquable (balise `<area>` sans attribut `href`) de décoration, vérifie-t-elle une de ces conditions ?
La balise `<area>` possède un attribut `alt` vide (`alt=""`) et est dépourvue de tout autre attribut permettant de fournir une alternative textuelle ;
La balise `<area>` possède un attribut WAI-ARIA `aria-hidden="true"` ou `role="presentation"`. -
1.2.3
📆
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque image objet (balise `<object>` avec l’attribut `type="image/…"`) de décoration, sans légende, vérifie-t-elle ces conditions ?
La balise `<object>` possède un attribut WAI-ARIA `aria-hidden="true"` ;
La balise `<object>` est dépourvue d’alternative textuelle ;
Il n’y a aucun texte faisant office d’alternative textuelle entre `<object>` et `</object>`. -
1.2.4
📆
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque image vectorielle (balise `<svg>`) de décoration, sans légende, vérifie-t-elle ces conditions ?
La balise `<svg>` possède un attribut WAI-ARIA `aria-hidden="true"` ;
La balise `<svg>` et ses enfants sont dépourvus d’alternative textuelle ;
Les balises `<title>` et `<desc>` sont absentes ou vides ;
La balise `<svg>` et ses enfants sont dépourvus d’attribut `title`. -
1.2.5
📆
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque image bitmap (balise `<canvas>`) de décoration, sans légende, vérifie-t-elle ces conditions ?
La balise `<canvas>` possède un attribut WAI-ARIA `aria-hidden="true"` ;
La balise `<canvas>` et ses enfants sont dépourvus d’alternative textuelle ;
Il n’y a aucun texte faisant office d’alternative textuelle entre `<canvas>` et `</canvas>`. -
1.2.6
📆
attentionPour les contrôles concernant les alternatives textuelles, nous utilisons la librairie dom-accessibility-api qui implémente les règles du W3C
Chaque image embarquée (balise `<embed>` avec l’attribut `type="image/…"`) de décoration, sans légende, vérifie-t-elle ces conditions ?
La balise `<embed>` possède un attribut WAI-ARIA `aria-hidden="true"` ;
La balise `<embed>` et ses enfants sont dépourvus d’alternative textuelle.
-
-
1.3
✔️ 0%
📆 9
Pour chaque image porteuse d’information ayant une alternative textuelle, cette alternative est-elle pertinente (hors cas particuliers) ?
-
1.3.1
📆
Chaque image (balise `<img>` ou balise possédant l’attribut WAI-ARIA `role="img"`) porteuse d’information, ayant une alternative textuelle, cette alternative est-elle pertinente (hors cas particuliers) ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent. -
1.3.2
📆
Pour chaque zone (balise `<area>`) d’une image réactive porteuse d’information, ayant une alternative textuelle, cette alternative est-elle pertinente (hors cas particuliers) ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent. -
1.3.3
📆
Pour chaque bouton de type `image` (balise `<input>` avec l’attribut `type="image"`), ayant une alternative textuelle, cette alternative est-elle pertinente (hors cas particuliers) ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent. -
1.3.4
📆
Pour chaque image objet (balise `<object>` avec l’attribut `type="image/…"`) porteuse d’information, ayant une alternative textuelle ou un contenu alternatif, cette alternative est-elle pertinente (hors cas particuliers) ?
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent ;
S’il est présent le contenu alternatif est pertinent. -
1.3.5
📆
Pour chaque image embarquée (balise `<embed>` avec l’attribut `type="image/…"`) porteuse d’information, ayant une alternative textuelle ou un contenu alternatif, cette alternative est-elle pertinente (hors cas particuliers) ?
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent ;
S’il est présent le contenu alternatif est pertinent. -
1.3.6
📆
Pour chaque image vectorielle (balise `<svg>`) porteuse d’information, ayant une alternative textuelle, cette alternative est-elle pertinente (hors cas particuliers) ?
S’il est présent, le contenu de l'élément `<title>` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent. -
1.3.7
📆
Pour chaque image bitmap (balise `<canvas>`) porteuse d’information, ayant une alternative textuelle ou un contenu alternatif, cette alternative est-elle pertinente (hors cas particuliers) ?
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent ;
S’il est présent le contenu alternatif est pertinent. -
1.3.8
📆
Pour chaque image bitmap (balise `<canvas>`) porteuse d’information et ayant un contenu alternatif entre `<canvas>` et `</canvas>`, ce contenu alternatif est-il correctement restitué par les technologies d’assistance ?
-
1.3.9
📆
Pour chaque image porteuse d’information et ayant une alternative textuelle, l’alternative textuelle est-elle courte et concise (hors cas particuliers) ?
-
-
1.4
✔️ 0%
📆 7
Pour chaque image utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle, cette alternative permet-elle d’identifier la nature et la fonction de l’image ?
-
1.4.1
📆
Pour chaque image (balise `<img>`) utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle, cette alternative est-elle pertinente ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent. -
1.4.2
📆
Pour chaque zone (balise `<area>`) d’une image réactive utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle, cette alternative est-elle pertinente ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent. -
1.4.3
📆
Pour chaque bouton de type image (balise `<input>` avec l’attribut `type="image"`) utilisé comme CAPTCHA ou comme image-test, ayant une alternative textuelle, cette alternative est-elle pertinente ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent. -
1.4.4
📆
Pour chaque image objet (balise `<object>` avec l’attribut `type="image/…"`) utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle ou un contenu alternatif, cette alternative est-elle pertinente ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent ;
S’il est présent le contenu alternatif est pertinent. -
1.4.5
📆
Pour chaque image embarquée (balise `<embed>` avec l’attribut `type="image/…"`) utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle ou un contenu alternatif, cette alternative est-elle pertinente ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent ;
S’il est présent le contenu alternatif est pertinent. -
1.4.6
📆
Pour chaque image vectorielle (balise `<svg>`) utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle, cette alternative est-elle pertinente ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent. -
1.4.7
📆
Pour chaque image bitmap (balise `<canvas>`) utilisée comme CAPTCHA ou comme image-test, ayant une alternative textuelle ou un contenu alternatif, cette alternative est-elle pertinente ?
S’il est présent, le contenu de l’attribut `alt` est pertinent ;
S’il est présent, le contenu de l’attribut `title` est pertinent ;
S’il est présent, le contenu de l’attribut WAI-ARIA `aria-label` est pertinent ;
S’il est présent, le passage de texte associé via l’attribut WAI-ARIA `aria-labelledby` est pertinent ;
S’il est présent le contenu alternatif est pertinent.
-
-
1.5
✔️ 0%
📆 2
Pour chaque image utilisée comme CAPTCHA, une solution d’accès alternatif au contenu ou à la fonction du CAPTCHA est-elle présente ?
-
1.5.1
📆
Chaque image (balises `<img>`, `<area>`, `<object>`, `<embed>`, `<svg>`, `<canvas>` ou possédant un attribut WAI-ARIA `role="img"`) utilisée comme CAPTCHA vérifie-t-elle une de ces conditions ?
Il existe une autre forme de CAPTCHA non graphique, au moins ;
Il existe une autre solution d’accès à la fonctionnalité qui est sécurisée par le CAPTCHA. -
1.5.2
📆
Chaque bouton associé à une image (balise `input` avec l’attribut `type="image"`) utilisée comme CAPTCHA vérifie-t-il une de ces conditions ?
Il existe une autre forme de CAPTCHA non graphique, au moins ;
Il existe une autre solution d’accès à la fonctionnalité sécurisée par le CAPTCHA.
-
-
1.6
✔️ 0%
📆 7
Chaque image porteuse d’information a-t-elle, si nécessaire, une description détaillée ?
-
1.6.1
📆
Chaque image (balise `<img>`) porteuse d’information, qui nécessite une description détaillée, vérifie-t-elle une de ces conditions ?
Il existe un attribut `longdesc` qui donne l’adresse (URL) d’une page ou d’un emplacement dans la page contenant la description détaillée ;
Il existe une alternative textuelle contenant la référence à une description détaillée adjacente à l’image ;
Il existe un lien ou un bouton adjacent permettant d’accéder à la description détaillée. -
1.6.2
📆
Chaque image objet (balise `<object>` avec l’attribut `type="image/…"`) porteuse d’information, qui nécessite une description détaillée, vérifie-t-elle une de ces conditions ?
Il existe un attribut `longdesc` qui donne l’adresse (URL) d’une page ou d’un emplacement dans la page contenant la description détaillée ;
Il existe une alternative textuelle contenant la référence à une description détaillée adjacente à l’image ;
Il existe un lien ou un bouton adjacent permettant d’accéder à la description détaillée. -
1.6.3
📆
Chaque image embarquée (balise `<embed>`) porteuse d’information, qui nécessite une description détaillée, vérifie-t-elle une de ces conditions ?
Il existe un attribut `longdesc` qui donne l’adresse (URL) d’une page ou d’un emplacement dans la page contenant la description détaillée ;
Il existe une alternative textuelle contenant la référence à une description détaillée adjacente à l’image ;
Il existe un lien ou un bouton adjacent permettant d’accéder à la description détaillée. -
1.6.4
📆
Chaque bouton de type image (balise `<input>` avec l’attribut `type="image"`) porteur d’information, qui nécessite une description détaillée, vérifie-t-il une de ces conditions ?
Il existe un attribut `longdesc` qui donne l’adresse (URL) d’une page ou d’un emplacement dans la page contenant la description détaillée ;
Il existe une alternative textuelle contenant la référence à une description détaillée adjacente à l’image ;
Il existe un lien ou un bouton adjacent permettant d’accéder à la description détaillée. -
1.6.5
📆
Chaque image vectorielle (balise `<svg>`) porteuse d’information, qui nécessite une description détaillée, vérifie-t-elle une de ces conditions ?
Il existe un attribut WAI-ARIA `aria-label` contenant l’alternative textuelle et une référence à une description détaillée adjacente ;
Il existe un attribut WAI-ARIA `aria-labelledby` associant un passage de texte faisant office d’alternative textuelle et un autre faisant office de description détaillée ;
Il existe un attribut WAI-ARIA `aria-describedby` associant un passage de texte faisant office de description détaillée ;
Il existe un lien ou un bouton adjacent permettant d’accéder à la description détaillée. -
1.6.6
📆
Pour chaque image vectorielle (balise `<svg>`) porteuse d’information, ayant une description détaillée, la référence éventuelle à la description détaillée dans l’attribut WAI-ARIA `aria-label` et la description détaillée associée par l’attribut WAI-ARIA `aria-labelledby` ou `aria-describedby` sont-elles correctement restituées par les technologies d’assistance ?
-
1.6.7
📆
Chaque image bitmap (balise `<canvas>`), porteuse d’information, qui nécessite une description détaillée, vérifie-t-elle une de ces conditions ?
Il existe un attribut WAI-ARIA `aria-label` contenant l’alternative textuelle et une référence à une description détaillée adjacente ;
Il existe un attribut WAI-ARIA `aria-labelledby` associant un passage de texte faisant office d’alternative textuelle et un autre faisant office de description détaillée ;
Il existe un contenu textuel entre `<canvas>` et `</canvas>` faisant référence à une description détaillée adjacente à l’image bitmap ;
Il existe un contenu textuel entre `<canvas>` et `</canvas>` faisant office de description détaillée ;
Il existe un lien ou bouton adjacent permettant d’accéder à la description détaillée. -
1.6.8
Pour chaque image bitmap (balise `<canvas>`) porteuse d’information, qui implémente une référence à une description détaillée adjacente, cette référence est-elle correctement restituée par les technologies d’assistance ?
-
1.6.9
Pour chaque image (balise `<img>`, `<input>` avec l’attribut `type="image"`, `<area>`, `<object>`, `<embed>`, `<svg>`, `<canvas>`, ou possédant un attribut WAI-ARIA `role="img"`) porteuse d’information, qui est accompagnée d’une description détaillée et qui utilise un attribut WAI-ARIA `aria-describedby`, l’attribut WAI-ARIA `aria-describedby` associe-t-il la description détaillée ?
-
1.6.10
Chaque balise possédant un attribut WAI-ARIA `role="img"` porteuse d’information, qui nécessite une description détaillée, vérifie-t-elle une de ces conditions ?
Il existe un attribut WAI-ARIA `aria-label` contenant l’alternative textuelle et une référence à une description détaillée adjacente ;
Il existe un attribut WAI-ARIA `aria-labelledby` associant un passage de texte faisant office d’alternative textuelle et un autre faisant office de description détaillée ;
Il existe un attribut WAI-ARIA `aria-describedby` associant un passage de texte faisant office de description détaillée ;
Il existe un lien ou un bouton adjacent permettant d’accéder à la description détaillée.
-
-
1.7
✔️ 0%
Pour chaque image porteuse d’information ayant une description détaillée, cette description est-elle pertinente ?
-
1.7.1
Chaque image (balise `<img>`) porteuse d’information, ayant une description détaillée, vérifie-t-elle ces conditions ?
La description détaillée via l’adresse référencée dans l’attribut `longdesc` est pertinente ;
La description détaillée dans la page et signalée par l’alternative textuelle est pertinente ;
La description détaillée via un lien ou un bouton adjacent est pertinente ;
Le passage de texte associé via l’attribut WAI-ARIA `aria-describedby` est pertinent. -
1.7.2
Chaque bouton de type image (balise `<input>` avec l’attribut `type="image"`) porteur d’information, ayant une description détaillée, vérifie-t-il ces conditions ?
La description détaillée dans la page et signalée par l’alternative textuelle est pertinente ;
La description détaillée via un lien ou un bouton adjacent est pertinente ;
Le passage de texte associé via l’attribut WAI-ARIA `aria-describedby` est pertinent. -
1.7.3
Chaque image objet (balise `<object>` avec l’attribut `type="image/…"`) porteuse d’information, ayant une description détaillée, vérifie-t-elle ces conditions ?
La description détaillée dans la page et signalée par l’alternative textuelle est pertinente ;
La description détaillée adjacente à l’image objet est pertinente ;
La description détaillée via un lien ou un bouton adjacent est pertinente ;
Le passage de texte associé via l’attribut WAI-ARIA `aria-describedby` est pertinent. -
1.7.4
Chaque image embarquée (balise `<embed>` avec l’attribut `type="image/…"`) porteuse d’information, ayant une description détaillée, vérifie-t-elle ces conditions ?
La description détaillée dans la page et signalée par l’alternative textuelle est pertinente ;
La description détaillée adjacente à l’image embarquée est pertinente ;
La description détaillée via un lien ou un bouton adjacent est pertinente ;
Le passage de texte associé via l’attribut WAI-ARIA `aria-describedby` est pertinent. -
1.7.5
Chaque image vectorielle (balise `<svg>`) porteuse d’information, ayant une description détaillée, vérifie-t-elle ces conditions ?
La description détaillée dans la page et signalée par l’alternative textuelle est pertinente ;
La description détaillée dans la page et signalée par le texte contenu dans la balise `<desc>` ou `<title>` est pertinente ;
La description détaillée adjacente contenue dans la balise `<desc>` est pertinente ;
La description détaillée via un lien ou un bouton adjacent est pertinente ;
Le passage de texte associé via l’attribut WAI-ARIA `aria-describedby` est pertinent. -
1.7.6
Chaque image bitmap (balise `<canvas>`) porteuse d’information, ayant une description détaillée, vérifie-t-elle ces conditions ?
La description détaillée dans la page et signalée par l’alternative textuelle est pertinente ;
La description détaillée dans la page et signalée par le texte contenu entre `<canvas>` et `</canvas>` est pertinente ;
La description détaillée contenue entre `<canvas>` et `</canvas>` est pertinente ;
La description détaillée adjacente à l’image bitmap est pertinente ;
La description détaillée via un lien ou un bouton adjacent est pertinente ;
Le passage de texte associé via l’attribut WAI-ARIA `aria-describedby` est pertinent.
-
-
1.8
✔️ 0%
Chaque image texte porteuse d’information, en l’absence d’un mécanisme de remplacement, doit si possible être remplacée par du texte stylé. Cette règle est-elle respectée (hors cas particuliers) ?
-
1.8.1
Chaque image texte (balise `<img>` ou possédant un attribut WAI-ARIA `role="img"`) porteuse d’information, en l’absence d’un mécanisme de remplacement, doit si possible être remplacée par du texte stylé. Cette règle est-elle respectée (hors cas particuliers) ?
-
1.8.2
Chaque bouton « image texte » (balise `<input>` avec l’attribut `type="image"`) porteur d’information, en l’absence d’un mécanisme de remplacement, doit si possible être remplacé par du texte stylé. Cette règle est-elle respectée (hors cas particuliers) ?
-
1.8.3
Chaque image texte objet (balise `<object>` avec l’attribut `type="image/…"`) porteuse d’information, en l’absence d’un mécanisme de remplacement, doit si possible être remplacée par du texte stylé. Cette règle est-elle respectée (hors cas particuliers) ?
-
1.8.4
Chaque image texte embarquée (balise `<embed>` avec l’attribut `type="image/…"`) porteuse d’information, en l’absence d’un mécanisme de remplacement, doit si possible être remplacée par du texte stylé. Cette règle est-elle respectée (hors cas particuliers) ?
-
1.8.5
Chaque image texte bitmap (balise `<canvas>`) porteuse d’information, en l’absence d’un mécanisme de remplacement, doit si possible être remplacée par du texte stylé. Cette règle est-elle respectée (hors cas particuliers) ?
-
1.8.6
Chaque image texte SVG (balise `<svg>`) porteuse d’information et dont le texte n’est pas complètement structuré au moyen d’éléments `<text>`, en l’absence d’un mécanisme de remplacement, doit si possible être remplacée par du texte stylé. Cette règle est-elle respectée (hors cas particuliers) ?
-
-
1.9
✔️ 0%
Chaque légende d’image est-elle, si nécessaire, correctement reliée à l’image correspondante ?
-
1.9.1
Chaque image pourvue d’une légende (balise `<img>`, `<input>` avec l’attribut `type="image"` ou possédant un attribut WAI-ARIA `role="img"` associée à une légende adjacente), vérifie-t-elle, si nécessaire, ces conditions ?
L’image (balise `<img>`, `<input>` avec l’attribut `type="image"` ou possédant un attribut WAI-ARIA `role="img"`) et sa légende adjacente sont contenues dans une balise `<figure>` ;
La balise `<figure>` possède un attribut WAI-ARIA `role="figure"` ou `role="group"` ;
La balise `<figure>` possède un attribut WAI-ARIA `aria-label` dont le contenu est identique au contenu de la légende ;
La légende est contenue dans une balise `<figcaption>`. -
1.9.2
Chaque image objet pourvue d’une légende (balise `<object>` avec l’attribut `type="image/…"` associée à une légende adjacente), vérifie-t-elle, si nécessaire, ces conditions ?
L’image objet et sa légende adjacente sont contenues dans une balise `<figure>` ;
La balise `<figure>` possède un attribut WAI-ARIA `role="figure"` ou `role="group"` ;
La balise `<figure>` possède un attribut WAI-ARIA `aria-label` dont le contenu est identique au contenu de la légende ;
La légende est contenue dans une balise `<figcaption>`. -
1.9.3
Chaque image embarquée pourvue d’une légende (balise `<embed>` associée à une légende adjacente), vérifie-t-elle, si nécessaire, ces conditions ?
L’image embarquée (balise `<embed>`) et sa légende adjacente sont contenues dans une balise `<figure>` ;
La balise `<figure>` possède un attribut WAI-ARIA `role="figure"` ou `role="group"` ;
La balise `<figure>` possède un attribut WAI-ARIA `aria-label` dont le contenu est identique au contenu de la légende ;
La légende est contenue dans une balise `<figcaption>`. -
1.9.4
Chaque image vectorielle pourvue d’une légende (balise `<svg>` associée à une légende adjacente), vérifie-t-elle, si nécessaire, ces conditions ?
L’image vectorielle (balise `<svg>`) et sa légende adjacente sont contenues dans une balise `<figure>` ;
La balise `<figure>` possède un attribut WAI-ARIA `role="figure"` ou `role="group"` ;
La balise `<figure>` possède un attribut WAI-ARIA `aria-label` dont le contenu est identique au contenu de la légende ;
La légende est contenue dans une balise `<figcaption>`. -
1.9.5
Chaque image bitmap pourvue d’une légende (balise `<canvas>` associée à une légende adjacente), vérifie-t-elle, si nécessaire, ces conditions ?
L’image bitmap (balise `<canvas>`) et sa légende adjacente sont contenues dans une balise `<figure>` ;
La balise `<figure>` possède un attribut WAI-ARIA `role="figure"` ou `role="group"` ;
La balise `<figure>` possède un attribut WAI-ARIA `aria-label` dont le contenu est identique au contenu de la légende ;
La légende est contenue dans une balise `<figcaption>`.
-
2. Cadres ✔️ 50%
🖐️ 1
-
2.1
✔️ 100%
Chaque cadre a-t-il un titre de cadre ?
-
2.2
✔️ 0%
🖐️ 1
Pour chaque cadre ayant un titre de cadre, ce titre de cadre est-il pertinent ?
3. Couleurs ✔️ 0%
-
3.1
✔️ 0%
Dans chaque page web, l’information ne doit pas être donnée uniquement par la couleur. Cette règle est-elle respectée ?
-
3.1.1
Pour chaque mot ou ensemble de mots dont la mise en couleur est porteuse d’information, l’information ne doit pas être donnée uniquement par la couleur. Cette règle est-elle respectée ?
-
3.1.2
Pour chaque indication de couleur donnée par un texte, l’information ne doit pas être donnée uniquement par la couleur. Cette règle est-elle respectée ?
-
3.1.3
Pour chaque image véhiculant une information, l’information ne doit pas être donnée uniquement par la couleur. Cette règle est-elle respectée ?
-
3.1.4
Pour chaque propriété CSS déterminant une couleur et véhiculant une information, l’information ne doit pas être donnée uniquement par la couleur. Cette règle est-elle respectée ?
-
3.1.5
Pour chaque média temporel véhiculant une information, l’information ne doit pas être donnée uniquement par la couleur. Cette règle est-elle respectée ?
-
3.1.6
Pour chaque média non temporel véhiculant une information, l’information ne doit pas être donnée uniquement par la couleur. Cette règle est-elle respectée ?
-
-
3.2
✔️ 0%
Dans chaque page web, le contraste entre la couleur du texte et la couleur de son arrière-plan est-il suffisamment élevé (hors cas particuliers) ?
-
3.2.1
Dans chaque page web, le texte et le texte en image sans effet de graisse d’une taille restituée inférieure à 24px vérifient-ils une de ces conditions (hors cas particuliers) ?
Le rapport de contraste entre le texte et son arrière-plan est de 4.5:1, au moins ;
Un mécanisme permet à l’utilisateur d’afficher le texte avec un rapport de contraste de 4.5:1, au moins. -
3.2.2
Dans chaque page web, le texte et le texte en image en gras d’une taille restituée inférieure à 18,5px vérifient-ils une de ces conditions (hors cas particuliers) ?
Le rapport de contraste entre le texte et son arrière-plan est de 4.5:1, au moins ;
Un mécanisme permet à l’utilisateur d’afficher le texte avec un rapport de contraste de 4.5:1, au moins. -
3.2.3
Dans chaque page web, le texte et le texte en image sans effet de graisse d’une taille restituée supérieure ou égale à 24px vérifient-ils une de ces conditions (hors cas particuliers) ?
Le rapport de contraste entre le texte et son arrière-plan est de 3:1, au moins ;
Un mécanisme permet à l’utilisateur d’afficher le texte avec un rapport de contraste de 3:1, au moins. -
3.2.4
Dans chaque page web, le texte et le texte en image en gras d’une taille restituée supérieure ou égale à 18,5px vérifient-ils une de ces conditions (hors cas particuliers) ?
Le rapport de contraste entre le texte et son arrière-plan est de 3:1, au moins ;
Un mécanisme permet à l’utilisateur d’afficher le texte avec un rapport de contraste de 3:1, au moins. -
3.2.5
Dans le mécanisme qui permet d’afficher un rapport de contraste conforme, le rapport de contraste entre le texte et la couleur d’arrière-plan est-il suffisamment élevé ?
-
-
3.3
✔️ 0%
Dans chaque page web, les couleurs utilisées dans les composants d’interface ou les éléments graphiques porteurs d’informations sont-elles suffisamment contrastées (hors cas particuliers) ?
-
3.3.1
Dans chaque page web, le rapport de contraste entre les couleurs d’un composant d’interface dans ses différents états et la couleur d’arrière-plan contiguë vérifie-t-il une de ces conditions (hors cas particuliers) ?
Le rapport de contraste est de 3:1, au moins ;
Un mécanisme permet un rapport de contraste de 3:1, au moins. -
3.3.2
Dans chaque page web, le rapport de contraste des différentes couleurs composant un élément graphique, lorsqu’elles sont nécessaires à sa compréhension, et la couleur d’arrière-plan contiguë, vérifie-t-il une de ces conditions (hors cas particuliers) ?
Le rapport de contraste est de 3:1, au moins ;
Un mécanisme permet un rapport de contraste de 3:1, au moins. -
3.3.3
Dans chaque page web, le rapport de contraste des différentes couleurs contiguës entre elles d’un élément graphique, lorsqu’elles sont nécessaires à sa compréhension, vérifie-t-il une de ces conditions (hors cas particuliers) ?
Le rapport de contraste est de 3:1, au moins ;
Un mécanisme permet un rapport de contraste de 3:1, au moins. -
3.3.4
Dans le mécanisme qui permet d’afficher un rapport de contraste conforme, les couleurs du composant ou des éléments graphiques porteurs d’informations qui le composent, sont-elles suffisamment contrastées ?
-
4. Multimédia ✔️ 0%
-
4.1
✔️ 0%
Chaque média temporel pré-enregistré a-t-il, si nécessaire, une transcription textuelle ou une audiodescription (hors cas particuliers) ?
-
4.1.1
Chaque média temporel pré-enregistré seulement audio, vérifie-t-il, si nécessaire, l’une de ces conditions (hors cas particuliers) ?
Il existe une transcription textuelle accessible via un lien ou bouton adjacent ;
Il existe une transcription textuelle adjacente clairement identifiable. -
4.1.2
Chaque média temporel pré-enregistré seulement vidéo vérifie-t-il, si nécessaire, l’une de ces conditions (hors cas particuliers) ?
Il existe une version alternative « audio seulement » accessible via un lien ou bouton adjacent ;
Il existe une version alternative « audio seulement » adjacente clairement identifiable ;
Il existe une transcription textuelle accessible via un lien ou bouton adjacent ;
Il existe une transcription textuelle adjacente clairement identifiable ;
Il existe une audiodescription synchronisée ;
Il existe une version alternative avec une audiodescription synchronisée accessible via un lien ou bouton adjacent. -
4.1.3
Chaque média temporel synchronisé pré-enregistré vérifie-t-il, si nécessaire, une de ces conditions (hors cas particuliers) ?
Il existe une transcription textuelle accessible via un lien ou bouton adjacent ;
Il existe une transcription textuelle adjacente clairement identifiable ;
Il existe une audiodescription synchronisée ;
Il existe une version alternative avec une audiodescription synchronisée accessible via un lien ou bouton adjacent.
-
-
4.2
✔️ 0%
Pour chaque média temporel pré-enregistré ayant une transcription textuelle ou une audiodescription synchronisée, celles-ci sont-elles pertinentes (hors cas particuliers) ?
-
4.2.1
Pour chaque média temporel pré-enregistré seulement audio, ayant une transcription textuelle, celle-ci est-elle pertinente (hors cas particuliers) ?
-
4.2.2
Chaque média temporel pré-enregistré seulement vidéo vérifie-t-il une de ces conditions (hors cas particuliers) ?
La transcription textuelle est pertinente ;
L’audiodescription synchronisée est pertinente ;
L’audiodescription synchronisée de la version alternative est pertinente ;
La version alternative audio seulement est pertinente. -
4.2.3
Chaque média temporel synchronisé pré-enregistré vérifie-t-il une de ces conditions (hors cas particuliers) ?
La transcription textuelle est pertinente ;
L’audiodescription synchronisée est pertinente ;
L’audiodescription synchronisée de la version alternative est pertinente.
-
-
4.3
✔️ 0%
Chaque média temporel synchronisé pré-enregistré a-t-il, si nécessaire, des sous-titres synchronisés (hors cas particuliers) ?
-
4.3.1
Chaque média temporel synchronisé pré-enregistré vérifie-t-il, si nécessaire, l’une de ces conditions (hors cas particuliers) ?
Le média temporel synchronisé possède des sous-titres synchronisés ;
Il existe une version alternative possédant des sous-titres synchronisés accessible via un lien ou bouton adjacent. -
4.3.2
Pour chaque média temporel synchronisé pré-enregistré possédant des sous-titres synchronisés diffusés via une balise `<track>`, la balise `<track>` possède-t-elle un attribut `kind="captions"` ?
-
-
4.4
✔️ 0%
Pour chaque média temporel synchronisé pré-enregistré ayant des sous-titres synchronisés, ces sous-titres sont-ils pertinents ?
-
4.4.1
Pour chaque média temporel synchronisé pré-enregistré ayant des sous-titres synchronisés, ces sous-titres sont-ils pertinents ?
-
-
4.5
✔️ 0%
Chaque média temporel pré-enregistré a-t-il, si nécessaire, une audiodescription synchronisée (hors cas particuliers) ?
-
4.5.1
Chaque média temporel pré-enregistré seulement vidéo vérifie-t-il, si nécessaire, une de ces conditions (hors cas particuliers) ?
Il existe une audiodescription synchronisée ;
Il existe une version alternative avec une audiodescription synchronisée. -
4.5.2
Chaque média temporel synchronisé pré-enregistré vérifie-t-il, si nécessaire, une de ces conditions (hors cas particuliers) ?
Il existe une audiodescription synchronisée ;
Il existe une version alternative avec une audiodescription synchronisée.
-
-
4.6
✔️ 0%
Pour chaque média temporel pré-enregistré ayant une audiodescription synchronisée, celle-ci est-elle pertinente ?
-
4.6.1
Pour chaque média temporel pré-enregistré seulement vidéo ayant une audiodescription synchronisée, celle-ci est-elle pertinente ?
-
4.6.2
Pour chaque média temporel synchronisé ayant une audiodescription synchronisée, celle-ci est-elle pertinente ?
-
-
4.7
✔️ 0%
Chaque média temporel est-il clairement identifiable (hors cas particuliers) ?
-
4.7.1
Pour chaque média temporel seulement son, seulement vidéo ou synchronisé, le contenu textuel adjacent permet-il d’identifier clairement le média temporel (hors cas particuliers) ?
-
-
4.8
✔️ 0%
Chaque média non temporel a-t-il, si nécessaire, une alternative (hors cas particuliers) ?
-
4.8.1
Chaque média non temporel vérifie-t-il, si nécessaire, une de ces conditions (hors cas particuliers) ?
Un lien ou un bouton adjacent, clairement identifiable, permet d’accéder à une page contenant une alternative ;
Un lien ou un bouton adjacent, clairement identifiable, permet d’accéder à une alternative dans la page. -
4.8.2
Chaque média non temporel associé à une alternative vérifie-t-il une de ces conditions (hors cas particuliers) ?
La page référencée par le lien ou bouton adjacent est accessible ;
L’alternative dans la page, référencée par le lien ou bouton adjacent, est accessible.
-
-
4.9
✔️ 0%
Pour chaque média non temporel ayant une alternative, cette alternative est-elle pertinente ?
-
4.9.1
Pour chaque média non temporel ayant une alternative, cette alternative permet-elle d’accéder au même contenu et à des fonctionnalités similaires ?
-
-
4.10
✔️ 0%
Chaque son déclenché automatiquement est-il contrôlable par l’utilisateur ?
-
4.10.1
Chaque séquence sonore déclenchée automatiquement via une balise `<object>`, `<video>`, `<audio>`, `<embed>`, `<bgsound>` ou un code JavaScript vérifie-t-elle une de ces conditions ?
La séquence sonore a une durée inférieure ou égale à 3 secondes ;
La séquence sonore peut être stoppée sur action de l’utilisateur ;
Le volume de la séquence sonore peut être contrôlé par l’utilisateur indépendamment du contrôle de volume du système.
-
-
4.11
✔️ 0%
La consultation de chaque média temporel est-elle, si nécessaire, contrôlable par le clavier et tout dispositif de pointage ?
-
4.11.1
Chaque média temporel a-t-il, si nécessaire, les fonctionnalités de contrôle de sa consultation ?
-
4.11.2
Pour chaque média temporel, chaque fonctionnalité vérifie-t-elle une de ces conditions ?
La fonctionnalité est accessible par le clavier et tout dispositif de pointage ;
Une fonctionnalité accessible par le clavier et tout dispositif de pointage permettant de réaliser la même action est présente dans la page. -
4.11.3
Pour chaque média temporel, chaque fonctionnalité vérifie-t-elle une de ces conditions ?
La fonctionnalité est activable par le clavier et tout dispositif de pointage ;
Une fonctionnalité activable par le clavier et tout dispositif de pointage permettant de réaliser la même action est présente dans la page.
-
-
4.12
✔️ 0%
La consultation de chaque média non temporel est-elle contrôlable par le clavier et tout dispositif de pointage ?
-
4.12.1
Pour chaque média non temporel, chaque fonctionnalité vérifie-t-elle une de ces conditions ?
La fonctionnalité est accessible par le clavier et tout dispositif de pointage ;
Une fonctionnalité accessible par le clavier et tout dispositif de pointage permettant de réaliser la même action est présente dans la page. -
4.12.2
Pour chaque média non temporel, chaque fonctionnalité vérifie-t-elle une de ces conditions ?
La fonctionnalité est activable par le clavier et tout dispositif de pointage ;
Une fonctionnalité activable par le clavier et tout dispositif de pointage permettant de réaliser la même action est présente dans la page.
-
-
4.13
✔️ 0%
Chaque média temporel et non temporel est-il compatible avec les technologies d’assistance (hors cas particuliers) ?
-
4.13.1
Chaque média temporel et non temporel vérifie-t-il une de ces conditions (hors cas particuliers) ?
Le nom, le rôle, la valeur, le paramétrage et les changements d’états des composants d’interfaces sont accessibles aux technologies d’assistance via une API d’accessibilité ;
Une alternative compatible avec une API d’accessibilité permet d’accéder aux mêmes fonctionnalités. -
4.13.2
Chaque média temporel et non temporel qui possède une alternative compatible avec les technologies d’assistance, vérifie-t-il une de ces conditions ?
L’alternative est adjacente au média temporel ou non temporel ;
L’alternative est accessible via un lien ou bouton adjacent ;
Un mécanisme permet de remplacer le média temporel ou non temporel par son alternative.
-
5. Tableaux ✔️ 47%
🖐️ 8
Nous considérons qu'un tableau de mise en forme est une balise table possédant le rôle presentation
Nous considérons qu'un tableau avec header est une balise table ou un rôle table possédant une balise th ou un élément avec un rôle rowheader ou un élément avec un rôle columnheader
-
5.1
✔️ 100%
Chaque tableau de données complexe a-t-il un résumé ?
-
5.1.1
✔️ 1
Pour chaque tableau de données complexe, un résumé est-il disponible ?
-
-
5.2
✔️ 0%
🖐️ 1
Pour chaque tableau de données complexe ayant un résumé, celui-ci est-il pertinent ?
-
5.2.1
🖐️ 1
Pour chaque tableau de données complexe ayant un résumé, celui-ci est-il pertinent ?
-
-
5.3
✔️ 0%
🖐️ 1
Pour chaque tableau de mise en forme, le contenu linéarisé reste-t-il compréhensible ?
-
5.3.1
🖐️ 1
Chaque tableau de mise en forme vérifie-t-il ces conditions ?
Le contenu linéarisé reste compréhensible ;
La balise `<table>` possède un attribut `role="presentation"`.
-
-
5.4
✔️ 100%
Pour chaque tableau de données ayant un titre, le titre est-il correctement associé au tableau de données ?
-
5.4.1
✔️ 1
Pour chaque tableau de données ayant un titre, le titre est-il correctement associé au tableau de données ?
-
-
5.5
✔️ 0%
🖐️ 1
Pour chaque tableau de données ayant un titre, celui-ci est-il pertinent ?
-
5.5.1
🖐️ 1
Pour chaque tableau de données ayant un titre, ce titre permet-il d’identifier le contenu du tableau de données de manière claire et concise ?
-
-
5.6
✔️ 0%
🖐️ 4
Pour chaque tableau de données, chaque en-tête de colonne et chaque en-tête de ligne sont-ils correctement déclarés ?
-
5.6.1
🖐️ 1
Pour chaque tableau de données, chaque en-tête de colonne s’appliquant à la totalité de la colonne vérifie-t-il une de ces conditions ?
L’en-tête de colonnes est structuré au moyen d’une balise `<th>` ;
L’en-tête de colonnes est structuré au moyen d’une balise pourvue d’un attribut WAI-ARIA `role="columnheader"`. -
5.6.2
🖐️ 1
Pour chaque tableau de données, chaque en-tête de ligne s’appliquant à la totalité de la ligne vérifie-t-il une de ces conditions ?
L’en-tête de lignes est structuré au moyen d’une balise `<th>` ;
L’en-tête de lignes est structuré au moyen d’une balise pourvue d’un attribut WAI-ARIA `role="rowheader"`. -
5.6.3
🖐️ 1
Pour chaque tableau de données, chaque en-tête ne s’appliquant pas à la totalité de la ligne ou de la colonne est-il structuré au moyen d’une balise `<th>` ?
-
5.6.4
🖐️ 1
Pour chaque tableau de données, chaque cellule associée à plusieurs en-têtes est-elle structurée au moyen d’une balise `<td>` ou `<th>` ?
-
-
5.7
✔️ 80%
🖐️ 1
Pour chaque tableau de données, la technique appropriée permettant d’associer chaque cellule avec ses en-têtes est-elle utilisée (hors cas particuliers) ?