"Ensure that pages featuring new technologies transform gracefully."
Cette recommandation fournit des informations qui permettent de s'assurer que les pages restent accessibles même lorsque de nouvelles technologies ne sont pas supportées ou qu'elles sont désactivées.
Organize documents so they may be read without style sheets. For example,
when an HTML document is rendered without associated style sheets, it must
still be possible to read the document. [Priority 1]
(Voir http://www.w3.org/TR/WCAG10/#tech-order-style-sheets et les techniques à http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/#tech-order-style-sheets)
Ce test analyse les conséquences sur la lisibilité du document lorsque des styles sont appliqués via une feuille de styles séparée, une feuille de styles intégrée et des attributs de styles sur des éléments du document.
Note : la spécification CSS 2.0 définit une feuille de style comme "un ensemble d'instructions qui spécifient la présentation d'un document" [33]. Ceci comprend les instructions dans les attributs de style.
//link[@rel='stylesheet']
//link[@rel='alternate stylesheet']
//style
//*/@style
Ce test analyse les conséquences sur la lisibilité du document lorsque des styles sont appliqués à l'aide d'éléments de programmation.
//script
//*/@onfocus
//*/@onblur
//*/@onkeypress
//*/@onkeydown
//*/@onkeyup
//*/@onsubmit
//*/@onreset
//*/@onselect
//*/@onchange
//*/@onload
//*/@onclick
//*/@ondblclick
//*/@onmousedown
//*/@onmouseup
//*/@onmouseover
//*/@onmousemove
//*/@onmouseout[35]
Ensure that equivalents for dynamic content are updated when the dynamic
content changes. [Priority 1]
(voir http://www.w3.org/TR/WCAG10/#tech-dynamic-source et les techniques à http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/#tech-dynamic-source)
Ce test analyse l'équivalent textuel de tout contenu non textuel chargé dans un cadre.
document(//frame/@src)
document(//iframe/@src)
Ce test analyse l'équivalent textuel de tout contenu non textuel chargé dans un cadre, par le navigateur, résultant de l'activation d'un lien ou de l'exécution d'un script.
//script
//a/@href
//*/@onfocus
//*/@onblur
//*/@onkeypress
//*/@onkeydown
//*/@onkeyup
//*/@onsubmit
//*/@onreset
//*/@onselect
//*/@onchange
//*/@onload
//*/@onclick
//*/@ondblclick
//*/@onmousedown
//*/@onmouseup
//*/@onmouseover
//*/@onmousemove
//*/@onmouseout
Ce test a pour objectif de vérifier qu'il y a des équivalents appropriés pour le contenu non textuel ajouté aux balises ou à l'arbre de document (DOM), par l'intermédiaire de scripts.
//script
//a/@href
//*/@onfocus
//*/@onblur
//*/@onkeypress
//*/@onkeydown
//*/@onkeyup
//*/@onsubmit
//*/@onreset
//*/@onselect
//*/@onchange
//*/@onload
//*/@onclick
//*/@ondblclick
//*/@onmousedown
//*/@onmouseup
//*/@onmouseover
//*/@onmousemove
Ensure that pages are usable when scripts, applets, or other programmatic
objects are turned off or not supported. If this is not possible, provide
equivalent information on an alternative accessible page. [Priority
1]
(Voir http://www.w3.org/TR/WCAG10/#tech-scripts et les techniques à http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/#tech-scripts)
Ce test détermine si les informations ou les fonctionnalités fournies par du contenu intégré sont également disponibles sans ce contenu.
//applet
//object
Ce test détermine si l'information ou la fonctionnalité fournie par un script est toujours disponible lorsque le script n'est pas exécuté.
//script
//a[starts-with(@href, 'javascript:')]
//*/@onfocus
//*/@onblur
//*/@onkeypress
//*/@onkeydown
//*/@onkeyup
//*/@onsubmit
//*/@onreset
//*/@onselect
//*/@onchange
//*/@onload
//*/@onunload
//*/@onclick
//*/@ondblclick
//*/@onmousedown
//*/@onmouseup
//*/@onmouseover
//*/@onmousemove
//*/@onmouseout
For scripts and applets, ensure that event handlers are input device-independent. [Priority 2]
(Voir http://www.w3.org/TR/WAI-WEBCONTENT/#tech-keyboard-operable-scripts et les techniques à http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/#tech-keyboard-operable-scripts)
Ce test a pour but de vérifier en particulier que les gestionnaire d'événement propres à la souris ont une version pour le clavier (ou indépendante du périphérique).
//*[@onclick]
//*[@onmousedown]
//*[@onmouseup]
//*[@onmouseout]
//*[@onmouseover]
| Evénements souris | Evénements clavier |
|---|---|
| onmousedown | onkeydown |
| onmouseup | onkeyup |
| onclick [36] | onkeypress |
| onmouseover | onfocus |
| onmouseout | onblur |
Ce test a pour but de vérifier la présence de gestionnaires d'événements propres à la souris pour lesquels il n'y a pas de gestionnaires d'événements clavier ou indépendants du périphérique, équivalents définis dans la spécification HTML 4.
//*[@ondblclick]
//*[@onmousemove]
Ce test vérifie en particulier si les gestionnaires d'événements dans les applets sont indépendants du périphérique.
-
Ensure that dynamic content is accessible or provide an alternative presentation or page. [Priority 2]
(Voir http://www.w3.org/TR/WCAG10/#tech-fallback-page et les techniques à http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/#tech-fallback-page)
Ce point de contrôle traite de l'accessibilité des contenus dynamiques. Il y a deux manières de créer du contenu dynamique : le contenu dynamique côté serveur, et le contenu dynamique côté client. Concernant les évaluations (semi) automatiques, seul le contenu dynamique côté client est pris en compte, car on ne peut clairement identifier la présence d'un contenu dynamique côté serveur.
Ce test a pour but de détecter des présentations par cadres avec du contenu dynamique inaccessible et sans section noframes.
//frameset[not(descendant::noframes)]
Ce test a pour but de détecter des présentations par cadres avec du contenu dynamique inaccessible et sans section noframes.
//frameset
Ce test a pour but de détecter les liens qui utilisent javascript.
//a[starts-with(@href, 'javascript:')]