♿ Accessibilité & WordPress : Créer des sites pour tous les utilisateurs

Tony Archambeau
Tony ArchambeauCEO, CTO, Développeur web, Consultant, Growth hacker at Organilog
Accessibilité & WordPress
Créer des sites pour tous les utilisateurs
WordCamp Paris 2014
Qui suis­je ?
Tony Archambeau
Développeur web
●

Sites web
infowebmaster.fr
sql.sh
tonyarchambeau.com

●

Twitter
@TonyArchambeau

WordCamp Paris 2014

2/48
Chapitre 1
1. État de l'accessibilité
2. HTML
3. CSS
4. Javascript
5. Contenu

WordCamp Paris 2014

3/48
Accessibilité : Quelles déficiences ?
●

Déficience visuelle

●

Déficience auditive

●

Déficience moteur

●

Déficience « mentale »

●

Autres

WordCamp Paris 2014

4/48
Accessibilité : Qui ?
●

●

1 personne sur 5 considère être limitée dans
ses activités

1 personne sur 10 considère avoir un handicap

http://www.insee.fr/fr/themes/document.asp?ref_id=ip1254

WordCamp Paris 2014

5/48
Accessibilité : Qui ?

Population vieillissante
WordCamp Paris 2014

6/48
Accessibilité : Déficiences temporaires
●

Bras dans le plâtre

●

Grosse migraine

●

Consommation excessive d'alcool

●

Perte ou bris de lunettes

●

Ordinateur sans haut-parleur

●

Souris cassée

●

Écran cassé

●

Reflet du soleil sur l'écran

●

…

WordCamp Paris 2014

7/48
Accessibilité : Éthique

Tous les Hommes
naissent et demeurent
libres et égaux en droits

Déclaration des droits de l’homme et du citoyen de 1789

WordCamp Paris 2014

8/48
Accessibilité : Législation

Dura lex,
sed lex
« La loi est dure, mais c’est la loi »

WordCamp Paris 2014

9/48
Accessibilité : Interaction avec un site
●

Souris

●

Écran

●

Clavier

●

Haut parleur

●

Micro

●

●

Clavier
virtuel

●

Plage braille

●

Trackball

WordCamp Paris 2014

●
●

Synthèse
vocale
Plage braille
Agrandisseur
d'écran

10/48
Chapitre 2
1. État de l'accessibilité
2. HTML
3. CSS
4. Javascript
5. Contenu

WordCamp Paris 2014

11/48
HTML : W3C
●

Validité W3C aide mais ne suffit pas

●

Éviter de détourner le fonctionnement normal

WordCamp Paris 2014

12/48
HTML : Langage
●

Langue avec l'attribut lang et sens de lecture
avec dir
–

Langue courant sur la balise <html>
<html <?php language_attributes(); ?> dir="ltr">

–

Modifier la langue sur une balise <div>
<div lang="en">Hello World!</div>

–

Modifier la langue sur une balise <span>
La phrase « <span lang="en">Hello World!</span> » 
signifie « bonjour le monde »

WordCamp Paris 2014

13/48
HTML : Contenu en langue étrangère
●

Shortcode : [div lang="en"]Hello World![/div]

●

Idem pour <span>

WordCamp Paris 2014

14/48
HTML : Navigation
●

●

Prioriser le contenu pour la navigation au
clavier
Attribut tabindex pour changer l'ordre de
navigation
<a href="page1.php" tabindex="2">lien 1</a>
<a href="page2.php" tabindex="1">lien 2</a>
<a href="page3.php" tabindex="3">lien 3</a>

●

Fil d'Ariane

WordCamp Paris 2014

15/48
HTML - Navigation (liens d'évitement)
●

HTML

●

CSS

WordCamp Paris 2014

16/48
HTML - Navigation (liens)
●

Cohérence

●

Pertinence

●

Compréhension. Éviter les mots compliqués,
inventés ou les abréviations
–

Privilégier « Aide » plutôt que « FAQ »

–

Éviter « lire la suite » ou utiliser une alternative

<a href="...">lire la suite<span class="sr­only"> 
de l'article ...</span></a>
<a href="..." title="titre de l'article">lire la 
suite</a>
WordCamp Paris 2014

17/48
HTML : Liens (caractères spéciaux)
●

Utiliser CSS pour intégrer des caractères
spéciaux

WordCamp Paris 2014

18/48
HTML : Image
●

Image informative
–
–

●

Éviter de mettre du texte dans l'image
Texte alternatif pertinent

Image d'illustration
–

●

Image de décoration
–

●

Texte alternatif court
A placer dans le CSS ou laisser l'attribut alt vide

Image dans un lien
–

Le texte alternatif doit servir pour le lien

WordCamp Paris 2014

19/48
HTML : Tableau
●

Utiliser la sémantique :
–

●

<thead>, <tbody>, <tfoot> et surtout <th>

Attributs :
–
–

●

-scope="row" et scope="col"
abbr=""

Description avec :
–

Attribut summary (en voie de disparition)

–

<caption>

WordCamp Paris 2014

20/48
HTML : Formulaire
●

Bonne sémantique

●

Ordre logique des champs

●

Utiliser <label> ou attribut title pour chaque
champ
–
–

●

Attribut placeholder ne suffit pas
Pertinence des mots

<fieldset> et <legend> pour regrouper les
checkbox et boutons radio

WordCamp Paris 2014

21/48
HTML : Formulaire (HTML5)
●

Reconnaissance vocale

<input type="text" name="s" x­webkit­speech />

●

Attribut required

WordCamp Paris 2014

22/48
HTML : Erreur sur un formulaire
●

Prévenir plutôt que guérir
–
–

Comprendre en PHP

–
●

Prévenir en javascript
Expliquer avec des mots

Message récapitulatif
–

Texte dans le <title>

–

Récapitulatif en haut de page

–

Lien interne pour accéder rapidement au champ

●

Message contextuel à côté des champs ayant une erreur

●

Pertinence du message d'erreur

WordCamp Paris 2014

23/48
HTML : WAI-ARIA
●

Avenir de la sémantique

●

Attributs « role »
–
–

role="search"

–
●

role="article"
...

Attributs « aria-* » pour les propriétés et états
–

aria-grabbed

–

aria-describedby

–

aria-labelledby

–

...

WordCamp Paris 2014

24/48
Chapitre 3
1. État de l'accessibilité
2. HTML
3. CSS
4. Javascript
5. Contenu

WordCamp Paris 2014

25/48
CSS : Taille de la police
●

Taille suffisante
–

Lecture

–

Élément cliquable (lien, bouton, scrollbar …)

●

Taille relative (em, rem ou %) plutôt qu'absolue (px ou pt)

●

Tester si police agrandie
–

●

Attention aux blocs avec une taille fixe

Espace suffisant
–

Entre les lignes

–

Entre les paragraphes (1.5em plutôt que 1.2em)

WordCamp Paris 2014

26/48
CSS : Taille de la police

WordCamp Paris 2014

27/48
CSS : Contraste
●

Bon contraste
–

●

Ni pas assez, ni trop (éviter #000000 sur #FFFFFF)

Attention particulière :
–

Propriété CSS opacity

–

Dégradé

–

Ombre en CSS

–

Couleur par défaut pour les images de fond

–

Texte au dessus d'une image

WordCamp Paris 2014

28/48
CSS : Couleurs
●

Pourquoi Facebook est bleu ?

http://edition.cnn.com/2010/TECH/social.media/09/20/zuckerberg.facebook.list/
WordCamp Paris 2014

29/48
CSS : Daltonisme
●

Exemples de dyschromatopsie :

Original

●

Protanopie

Deutéranopie

Tritanopie

Achromatopsie

Ne pas passer d'information par une couleur
–

Coupler avec texte ou iconographie

WordCamp Paris 2014

30/48
CSS : Police
●

Ne pas mettre en justifier

●

Éviter les polices avec serif

●

Éviter les textes en italique

●

Polices spécifiques pour les dyslexiques
–

Une open source et une sous licence payante

WordCamp Paris 2014

31/48
CSS : Cacher en CSS
●

Display:none pas lu par les lecteurs d'écran

●

Alternative :

Source : Bootstrap v3.0.0
WordCamp Paris 2014

32/48
CSS : Liens
●

Style distinct

●

Lien actif :
–
–

●

Utiliser :focus ou la propriété outline
Tester

Penser au style pour :
–

.current-menu-item

–

.current-page-ancestor

–

.current-post-ancestor

–

.current-post-parent

–

.current-menu-parent

WordCamp Paris 2014

33/48
CSS : Formulaire
●
●

●

Champ actif mis en valeur
Message « (*) Champs obligatoire » à placer
avant le formulaire
CSS3
–

:valid

–

:invalid

WordCamp Paris 2014

34/48
Chapitre 4
1. État de l'accessibilité
2. HTML
3. CSS
4. Javascript
5. Contenu

WordCamp Paris 2014

35/48
Javascript : Général
●

Tester la navigation au clavier
–

« onfocus » plutôt que « onclick »

–

Éviter le double clic

●

Tester si javascript désactivé

●

Attention à la manipulation du DOM

●

Attention au focus
–

Prendre le focus : attribut tabindex="0"

–

Enlever le focus : attribut tabindex="-1"

●

Modifier les attributs WAI-ARIA si nécessaire

●

Éviter les polices en <canvas>

WordCamp Paris 2014

36/48
Javascript : Actions temporelles
●

Éviter de limiter dans le temps

●

Laisser le temps aux utilisateurs
–
–

●

Slider
Redirection

Pouvoir augmenter
la limite de temps

WordCamp Paris 2014

37/48
Javascript : Pièges
●

Attention aux pièges
–

Infinite scrolling

–

Boucle sans fin

–

Événement keyup

–

Événement keydown

–

...

WordCamp Paris 2014

38/48
Chapitre 5
1. État de l'accessibilité
2. HTML
3. CSS
4. Javascript
5. Contenu

WordCamp Paris 2014

39/48
Contenu : Titre de la page
●

Pertinent

●

Pas trop long

WordCamp Paris 2014

40/48
Contenu : Éditeur
●

Respect sémantique

WordCamp Paris 2014

41/48
Contenu : Éditeur
●

Éviter les doubles espaces entre 2 mots

●

Choix des mots adaptés à la cible
–

Site généraliste : mots compréhensibles de tous

–

Site spécialisé : autorisé à utiliser des termes plus ciblés

●

Casser les grands blocs de texte en paragraphes

●

Titres compréhensibles et cohérents

●

Hiérarchie des titres

WordCamp Paris 2014

42/48
Contenu : Sémantique
●

Ne pas faire de paragraphe ou titre vide

WordCamp Paris 2014

43/48
Contenu : Liens
●

Ancre pertinente
–

Télécharger un document : format, poids et langue

–

Si possible inférieur à 80 caractères

●

Possibilité de compléter avec attribut title

●

Éviter d'ouvrir
dans une nouvelle
fenêtre

WordCamp Paris 2014

44/48
Contenu : Image
●

Titre :
–

●

Utile pour le Back-Office

Légende :
–
–

●

Apparaît sous l'image
Éviter la redondance avec le texte
alternatif

Texte alternatif :
–

Éviter de commencer par « image
de ... »

–

Longue description soit dans le
texte ou faire un lien vers une page
spécifique à proximité de l'image

WordCamp Paris 2014

45/48
Contenu : <iframe>
●

Utiliser un attribut title

WordCamp Paris 2014

46/48
Contenu : Vidéo/Audio
●

Sous-titre

●

Audio-description

●

Retranscription en
langue des signes

●

Éviter autoplay

●

Éviter visionnage en boucle

WordCamp Paris 2014

47/48
Merci de votre attention

WordCamp Paris 2014

48/48
1 of 48

Recommended

Pourquoi et comment améliorer l'accessibilité des sites WordPress - WordCamp ... by
Pourquoi et comment améliorer l'accessibilité des sites WordPress - WordCamp ...Pourquoi et comment améliorer l'accessibilité des sites WordPress - WordCamp ...
Pourquoi et comment améliorer l'accessibilité des sites WordPress - WordCamp ...Claire Bizingre
7.1K views42 slides
Alter way-wordcamp-paris-2014 by
Alter way-wordcamp-paris-2014Alter way-wordcamp-paris-2014
Alter way-wordcamp-paris-2014ALTER WAY
2.2K views56 slides
Site WordPress ecommerce Multisite Multilangue by
Site WordPress ecommerce Multisite MultilangueSite WordPress ecommerce Multisite Multilangue
Site WordPress ecommerce Multisite MultilangueEmilie LEBRUN
4.5K views36 slides
Trouvez le Thème WordPress Idéal - WordCamp 2014 by
Trouvez le Thème WordPress Idéal - WordCamp 2014Trouvez le Thème WordPress Idéal - WordCamp 2014
Trouvez le Thème WordPress Idéal - WordCamp 2014Alex Bortolotti
47.4K views49 slides
Constructeurs de page WordPress by
Constructeurs de page WordPressConstructeurs de page WordPress
Constructeurs de page WordPressFabrice Ducarme
7.2K views26 slides
Comment travailler sur des projets WordPress pour de gros clients by
Comment travailler sur des projets WordPress pour de gros clientsComment travailler sur des projets WordPress pour de gros clients
Comment travailler sur des projets WordPress pour de gros clientsEmilie LEBRUN
2.4K views50 slides

More Related Content

What's hot

Wcparis 2014 content_chouing2 by
Wcparis 2014 content_chouing2Wcparis 2014 content_chouing2
Wcparis 2014 content_chouing2Cedric Motte
7.5K views103 slides
Wordpress et la sécurité des plugins by
Wordpress et la sécurité des pluginsWordpress et la sécurité des plugins
Wordpress et la sécurité des pluginsBoiteaweb
5.7K views17 slides
Stratégie d'acquisition de trafic (Webisland) by
Stratégie d'acquisition de trafic (Webisland)Stratégie d'acquisition de trafic (Webisland)
Stratégie d'acquisition de trafic (Webisland)Daniel Roch - SeoMix
12.8K views39 slides
Conférence WordPress & E-commerce by
Conférence WordPress & E-commerceConférence WordPress & E-commerce
Conférence WordPress & E-commerceFabrice Ducarme
9.2K views32 slides
Conception de thèmes WordPress : construire et optimiser son espace de travail by
Conception de thèmes WordPress : construire  et optimiser son espace de travailConception de thèmes WordPress : construire  et optimiser son espace de travail
Conception de thèmes WordPress : construire et optimiser son espace de travailFrédérique Game
5.6K views61 slides
L’envers du décor d’un site WooCommerce | WP Tech Nantes by
L’envers du décord’un site WooCommerce | WP Tech NantesL’envers du décord’un site WooCommerce | WP Tech Nantes
L’envers du décor d’un site WooCommerce | WP Tech NantesFabrice Ducarme
36.8K views14 slides

What's hot(20)

Wcparis 2014 content_chouing2 by Cedric Motte
Wcparis 2014 content_chouing2Wcparis 2014 content_chouing2
Wcparis 2014 content_chouing2
Cedric Motte7.5K views
Wordpress et la sécurité des plugins by Boiteaweb
Wordpress et la sécurité des pluginsWordpress et la sécurité des plugins
Wordpress et la sécurité des plugins
Boiteaweb5.7K views
Stratégie d'acquisition de trafic (Webisland) by Daniel Roch - SeoMix
Stratégie d'acquisition de trafic (Webisland)Stratégie d'acquisition de trafic (Webisland)
Stratégie d'acquisition de trafic (Webisland)
Daniel Roch - SeoMix12.8K views
Conférence WordPress & E-commerce by Fabrice Ducarme
Conférence WordPress & E-commerceConférence WordPress & E-commerce
Conférence WordPress & E-commerce
Fabrice Ducarme9.2K views
Conception de thèmes WordPress : construire et optimiser son espace de travail by Frédérique Game
Conception de thèmes WordPress : construire  et optimiser son espace de travailConception de thèmes WordPress : construire  et optimiser son espace de travail
Conception de thèmes WordPress : construire et optimiser son espace de travail
Frédérique Game5.6K views
L’envers du décor d’un site WooCommerce | WP Tech Nantes by Fabrice Ducarme
L’envers du décord’un site WooCommerce | WP Tech NantesL’envers du décord’un site WooCommerce | WP Tech Nantes
L’envers du décor d’un site WooCommerce | WP Tech Nantes
Fabrice Ducarme36.8K views
Ouvrir vos plugins aux autres développeurs - WPTech Nantes by corsonr
Ouvrir vos plugins aux autres développeurs - WPTech NantesOuvrir vos plugins aux autres développeurs - WPTech Nantes
Ouvrir vos plugins aux autres développeurs - WPTech Nantes
corsonr8.5K views
Combien coûte un site WordPress ? - Wordcamp Paris 2014 by Thierry Pigot
Combien coûte un site WordPress ? - Wordcamp Paris 2014Combien coûte un site WordPress ? - Wordcamp Paris 2014
Combien coûte un site WordPress ? - Wordcamp Paris 2014
Thierry Pigot43.4K views
SEO WordPress : Optimiser le référencement naturel by Thierry Pigot
SEO WordPress : Optimiser le référencement naturelSEO WordPress : Optimiser le référencement naturel
SEO WordPress : Optimiser le référencement naturel
Thierry Pigot3K views
[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress by Sébastien Grillot
[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress
[WordCamp Bordeaux] Fusionner sa politique print et web avec WordPress
Sébastien Grillot377 views
CESEO: Certification Expert SEO by SEO CAMP
CESEO: Certification Expert SEOCESEO: Certification Expert SEO
CESEO: Certification Expert SEO
SEO CAMP6.1K views
Alphorm.com Support de la Formation Adobe-Illustrator CC , Découverte du vect... by Alphorm
Alphorm.com Support de la Formation Adobe-Illustrator CC , Découverte du vect...Alphorm.com Support de la Formation Adobe-Illustrator CC , Découverte du vect...
Alphorm.com Support de la Formation Adobe-Illustrator CC , Découverte du vect...
Alphorm20.3K views
Le graphisme d'un site internet ! by elaugier
Le graphisme d'un site internet !Le graphisme d'un site internet !
Le graphisme d'un site internet !
elaugier4.1K views
Interview Métier : Web Designer / Intégrateur by #SUPDEWEB
Interview Métier : Web Designer / Intégrateur Interview Métier : Web Designer / Intégrateur
Interview Métier : Web Designer / Intégrateur
#SUPDEWEB10.4K views
Alphorm.com Formation Dreamweaver CC pour les débutants by Alphorm
Alphorm.com Formation Dreamweaver CC pour les débutantsAlphorm.com Formation Dreamweaver CC pour les débutants
Alphorm.com Formation Dreamweaver CC pour les débutants
Alphorm17.2K views
Plus belle la vie avec HTML5 et CSS3 - Paris Web 2010 by Raphaël Goetter
Plus belle la vie avec HTML5 et CSS3 - Paris Web 2010Plus belle la vie avec HTML5 et CSS3 - Paris Web 2010
Plus belle la vie avec HTML5 et CSS3 - Paris Web 2010
Raphaël Goetter6.9K views
Monetiser ses plugins WordPress by vpratfr
Monetiser ses plugins WordPressMonetiser ses plugins WordPress
Monetiser ses plugins WordPress
vpratfr3.9K views
Alphorm.com Formation SketchUp 2016 et Artlantis 6 - Atelier architectural by Alphorm
Alphorm.com Formation SketchUp 2016 et Artlantis 6 - Atelier architecturalAlphorm.com Formation SketchUp 2016 et Artlantis 6 - Atelier architectural
Alphorm.com Formation SketchUp 2016 et Artlantis 6 - Atelier architectural
Alphorm4.3K views
Communautés Drupal et WordPress : le choc des titans ? by Thierry Pigot
Communautés Drupal et WordPress : le choc des titans ?Communautés Drupal et WordPress : le choc des titans ?
Communautés Drupal et WordPress : le choc des titans ?
Thierry Pigot1.2K views

Viewers also liked

The code history of WordPress by
The code history of WordPressThe code history of WordPress
The code history of WordPressMarko Heijnen
6.7K views48 slides
Concilier accessibilité et SEO by
Concilier accessibilité et SEOConcilier accessibilité et SEO
Concilier accessibilité et SEOSébastien Delorme
1.4K views34 slides
Conseil formation Web et accessibilité numérique by
Conseil formation Web et accessibilité numériqueConseil formation Web et accessibilité numérique
Conseil formation Web et accessibilité numériqueClaire Bizingre
1.6K views14 slides
Ns petite histoire de ergonomie web by
Ns petite histoire de ergonomie webNs petite histoire de ergonomie web
Ns petite histoire de ergonomie webOlivier Rovellotti
1.5K views26 slides
Bien débuter dans la conception d'un thème WordPress by
Bien débuter dans la conception d'un thème WordPressBien débuter dans la conception d'un thème WordPress
Bien débuter dans la conception d'un thème WordPressAurélien Denis
5K views20 slides
Handicap et accessibilité : où en est le e-learning ? by
Handicap et  accessibilité : où en est le e-learning ?Handicap et  accessibilité : où en est le e-learning ?
Handicap et accessibilité : où en est le e-learning ?UnI Learning France
4.4K views20 slides

Viewers also liked(10)

The code history of WordPress by Marko Heijnen
The code history of WordPressThe code history of WordPress
The code history of WordPress
Marko Heijnen6.7K views
Conseil formation Web et accessibilité numérique by Claire Bizingre
Conseil formation Web et accessibilité numériqueConseil formation Web et accessibilité numérique
Conseil formation Web et accessibilité numérique
Claire Bizingre1.6K views
Bien débuter dans la conception d'un thème WordPress by Aurélien Denis
Bien débuter dans la conception d'un thème WordPressBien débuter dans la conception d'un thème WordPress
Bien débuter dans la conception d'un thème WordPress
Aurélien Denis5K views
Handicap et accessibilité : où en est le e-learning ? by UnI Learning France
Handicap et  accessibilité : où en est le e-learning ?Handicap et  accessibilité : où en est le e-learning ?
Handicap et accessibilité : où en est le e-learning ?
UnI Learning France4.4K views
Choisir les bons Hooks dans vos Développements WordPress by Boiteaweb
Choisir les bons Hooks dans vos Développements WordPressChoisir les bons Hooks dans vos Développements WordPress
Choisir les bons Hooks dans vos Développements WordPress
Boiteaweb5.1K views
Guide moodle handicap [Septembre 2013] by floriebrange
Guide moodle handicap [Septembre 2013]Guide moodle handicap [Septembre 2013]
Guide moodle handicap [Septembre 2013]
floriebrange3.8K views
Ergonomie d’un site et navigation de l’internaute : anatomie d’un exemple by SilicomVallee
Ergonomie d’un site et navigation de l’internaute : anatomie d’un exempleErgonomie d’un site et navigation de l’internaute : anatomie d’un exemple
Ergonomie d’un site et navigation de l’internaute : anatomie d’un exemple
SilicomVallee1.1K views

Similar to ♿ Accessibilité & WordPress : Créer des sites pour tous les utilisateurs

Comment récupérer un projet Web pourri ... et réussir à travailler dessus. by
Comment récupérer un projet Web pourri ... et réussir à travailler dessus.Comment récupérer un projet Web pourri ... et réussir à travailler dessus.
Comment récupérer un projet Web pourri ... et réussir à travailler dessus.Guillaume RICHARD
761 views21 slides
Bonnes pratiques de developpement en PHP by
Bonnes pratiques de developpement en PHPBonnes pratiques de developpement en PHP
Bonnes pratiques de developpement en PHPPascal MARTIN
13K views82 slides
DDD session BrownBagLunch (FR) by
DDD session BrownBagLunch (FR)DDD session BrownBagLunch (FR)
DDD session BrownBagLunch (FR)Cyrille Martraire
1.4K views62 slides
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou... by
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...Flupa
1.7K views48 slides
Référencement & Standards Web : La même direction (PW2009) by
Référencement & Standards Web : La même direction (PW2009)Référencement & Standards Web : La même direction (PW2009)
Référencement & Standards Web : La même direction (PW2009)Thierry Régagnon
1.1K views46 slides
Formation html5 CSS3 offerte par ippon 2014 by
Formation html5 CSS3 offerte par ippon 2014Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014Ippon
9.2K views170 slides

Similar to ♿ Accessibilité & WordPress : Créer des sites pour tous les utilisateurs(20)

Comment récupérer un projet Web pourri ... et réussir à travailler dessus. by Guillaume RICHARD
Comment récupérer un projet Web pourri ... et réussir à travailler dessus.Comment récupérer un projet Web pourri ... et réussir à travailler dessus.
Comment récupérer un projet Web pourri ... et réussir à travailler dessus.
Guillaume RICHARD761 views
Bonnes pratiques de developpement en PHP by Pascal MARTIN
Bonnes pratiques de developpement en PHPBonnes pratiques de developpement en PHP
Bonnes pratiques de developpement en PHP
Pascal MARTIN13K views
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou... by Flupa
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...
Flupa1.7K views
Référencement & Standards Web : La même direction (PW2009) by Thierry Régagnon
Référencement & Standards Web : La même direction (PW2009)Référencement & Standards Web : La même direction (PW2009)
Référencement & Standards Web : La même direction (PW2009)
Thierry Régagnon1.1K views
Formation html5 CSS3 offerte par ippon 2014 by Ippon
Formation html5 CSS3 offerte par ippon 2014Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014
Ippon9.2K views
Flupa test a11y_16_05_2016s0f2 by vincent aniort
Flupa test a11y_16_05_2016s0f2Flupa test a11y_16_05_2016s0f2
Flupa test a11y_16_05_2016s0f2
vincent aniort673 views
Présentation Drupal - Global Training Days by ALTER WAY
Présentation Drupal - Global Training DaysPrésentation Drupal - Global Training Days
Présentation Drupal - Global Training Days
ALTER WAY2.4K views
Alphorm.com support de la formation programmer en C# 6 by Alphorm
Alphorm.com support de la formation programmer en C# 6Alphorm.com support de la formation programmer en C# 6
Alphorm.com support de la formation programmer en C# 6
Alphorm24.3K views
Cours Licence Pro (Système de gestion de contenu) Partie 2 by Creazzly
Cours Licence Pro (Système de gestion de contenu) Partie 2Cours Licence Pro (Système de gestion de contenu) Partie 2
Cours Licence Pro (Système de gestion de contenu) Partie 2
Creazzly1.8K views
Microsoft Syntex - Digitalisez vos contenus d'entreprise @MWCP21 20/01/2021 by Sébastien Paulet
Microsoft Syntex - Digitalisez vos contenus d'entreprise @MWCP21 20/01/2021Microsoft Syntex - Digitalisez vos contenus d'entreprise @MWCP21 20/01/2021
Microsoft Syntex - Digitalisez vos contenus d'entreprise @MWCP21 20/01/2021
Etude de cas Lyra Network - Quand la "doc" doit suivre... by IXIASOFT
Etude de cas Lyra Network - Quand la "doc" doit suivre...Etude de cas Lyra Network - Quand la "doc" doit suivre...
Etude de cas Lyra Network - Quand la "doc" doit suivre...
IXIASOFT984 views
Construire ensemble un enseignement du front-end pertinent, pédagogique et pé... by Delphine Malassingne
Construire ensemble un enseignement du front-end pertinent, pédagogique et pé...Construire ensemble un enseignement du front-end pertinent, pédagogique et pé...
Construire ensemble un enseignement du front-end pertinent, pédagogique et pé...
Mener à bien un projet Drupal (Drupagora 2013) by LaNetscouade
Mener à bien un projet Drupal (Drupagora 2013)Mener à bien un projet Drupal (Drupagora 2013)
Mener à bien un projet Drupal (Drupagora 2013)
LaNetscouade1.8K views
Introduction à la gestion de projet by laureno
Introduction à la gestion de projetIntroduction à la gestion de projet
Introduction à la gestion de projet
laureno2.5K views
Ged Open Source - Documation 2010 by Thomas Choppy
Ged Open Source - Documation 2010Ged Open Source - Documation 2010
Ged Open Source - Documation 2010
Thomas Choppy3.9K views
Plonger dans les plugins - WordCamp2015 - FSottolichio by utopsie
Plonger dans les plugins - WordCamp2015 - FSottolichioPlonger dans les plugins - WordCamp2015 - FSottolichio
Plonger dans les plugins - WordCamp2015 - FSottolichio
utopsie1.1K views

♿ Accessibilité & WordPress : Créer des sites pour tous les utilisateurs

  • 1. Accessibilité & WordPress Créer des sites pour tous les utilisateurs WordCamp Paris 2014
  • 2. Qui suis­je ? Tony Archambeau Développeur web ● Sites web infowebmaster.fr sql.sh tonyarchambeau.com ● Twitter @TonyArchambeau WordCamp Paris 2014 2/48
  • 3. Chapitre 1 1. État de l'accessibilité 2. HTML 3. CSS 4. Javascript 5. Contenu WordCamp Paris 2014 3/48
  • 4. Accessibilité : Quelles déficiences ? ● Déficience visuelle ● Déficience auditive ● Déficience moteur ● Déficience « mentale » ● Autres WordCamp Paris 2014 4/48
  • 5. Accessibilité : Qui ? ● ● 1 personne sur 5 considère être limitée dans ses activités 1 personne sur 10 considère avoir un handicap http://www.insee.fr/fr/themes/document.asp?ref_id=ip1254 WordCamp Paris 2014 5/48
  • 6. Accessibilité : Qui ? Population vieillissante WordCamp Paris 2014 6/48
  • 7. Accessibilité : Déficiences temporaires ● Bras dans le plâtre ● Grosse migraine ● Consommation excessive d'alcool ● Perte ou bris de lunettes ● Ordinateur sans haut-parleur ● Souris cassée ● Écran cassé ● Reflet du soleil sur l'écran ● … WordCamp Paris 2014 7/48
  • 8. Accessibilité : Éthique Tous les Hommes naissent et demeurent libres et égaux en droits Déclaration des droits de l’homme et du citoyen de 1789 WordCamp Paris 2014 8/48
  • 9. Accessibilité : Législation Dura lex, sed lex « La loi est dure, mais c’est la loi » WordCamp Paris 2014 9/48
  • 10. Accessibilité : Interaction avec un site ● Souris ● Écran ● Clavier ● Haut parleur ● Micro ● ● Clavier virtuel ● Plage braille ● Trackball WordCamp Paris 2014 ● ● Synthèse vocale Plage braille Agrandisseur d'écran 10/48
  • 11. Chapitre 2 1. État de l'accessibilité 2. HTML 3. CSS 4. Javascript 5. Contenu WordCamp Paris 2014 11/48
  • 12. HTML : W3C ● Validité W3C aide mais ne suffit pas ● Éviter de détourner le fonctionnement normal WordCamp Paris 2014 12/48
  • 13. HTML : Langage ● Langue avec l'attribut lang et sens de lecture avec dir – Langue courant sur la balise <html> <html <?php language_attributes(); ?> dir="ltr"> – Modifier la langue sur une balise <div> <div lang="en">Hello World!</div> – Modifier la langue sur une balise <span> La phrase « <span lang="en">Hello World!</span> »  signifie « bonjour le monde » WordCamp Paris 2014 13/48
  • 14. HTML : Contenu en langue étrangère ● Shortcode : [div lang="en"]Hello World![/div] ● Idem pour <span> WordCamp Paris 2014 14/48
  • 15. HTML : Navigation ● ● Prioriser le contenu pour la navigation au clavier Attribut tabindex pour changer l'ordre de navigation <a href="page1.php" tabindex="2">lien 1</a> <a href="page2.php" tabindex="1">lien 2</a> <a href="page3.php" tabindex="3">lien 3</a> ● Fil d'Ariane WordCamp Paris 2014 15/48
  • 16. HTML - Navigation (liens d'évitement) ● HTML ● CSS WordCamp Paris 2014 16/48
  • 17. HTML - Navigation (liens) ● Cohérence ● Pertinence ● Compréhension. Éviter les mots compliqués, inventés ou les abréviations – Privilégier « Aide » plutôt que « FAQ » – Éviter « lire la suite » ou utiliser une alternative <a href="...">lire la suite<span class="sr­only">  de l'article ...</span></a> <a href="..." title="titre de l'article">lire la  suite</a> WordCamp Paris 2014 17/48
  • 18. HTML : Liens (caractères spéciaux) ● Utiliser CSS pour intégrer des caractères spéciaux WordCamp Paris 2014 18/48
  • 19. HTML : Image ● Image informative – – ● Éviter de mettre du texte dans l'image Texte alternatif pertinent Image d'illustration – ● Image de décoration – ● Texte alternatif court A placer dans le CSS ou laisser l'attribut alt vide Image dans un lien – Le texte alternatif doit servir pour le lien WordCamp Paris 2014 19/48
  • 20. HTML : Tableau ● Utiliser la sémantique : – ● <thead>, <tbody>, <tfoot> et surtout <th> Attributs : – – ● -scope="row" et scope="col" abbr="" Description avec : – Attribut summary (en voie de disparition) – <caption> WordCamp Paris 2014 20/48
  • 21. HTML : Formulaire ● Bonne sémantique ● Ordre logique des champs ● Utiliser <label> ou attribut title pour chaque champ – – ● Attribut placeholder ne suffit pas Pertinence des mots <fieldset> et <legend> pour regrouper les checkbox et boutons radio WordCamp Paris 2014 21/48
  • 22. HTML : Formulaire (HTML5) ● Reconnaissance vocale <input type="text" name="s" x­webkit­speech /> ● Attribut required WordCamp Paris 2014 22/48
  • 23. HTML : Erreur sur un formulaire ● Prévenir plutôt que guérir – – Comprendre en PHP – ● Prévenir en javascript Expliquer avec des mots Message récapitulatif – Texte dans le <title> – Récapitulatif en haut de page – Lien interne pour accéder rapidement au champ ● Message contextuel à côté des champs ayant une erreur ● Pertinence du message d'erreur WordCamp Paris 2014 23/48
  • 24. HTML : WAI-ARIA ● Avenir de la sémantique ● Attributs « role » – – role="search" – ● role="article" ... Attributs « aria-* » pour les propriétés et états – aria-grabbed – aria-describedby – aria-labelledby – ... WordCamp Paris 2014 24/48
  • 25. Chapitre 3 1. État de l'accessibilité 2. HTML 3. CSS 4. Javascript 5. Contenu WordCamp Paris 2014 25/48
  • 26. CSS : Taille de la police ● Taille suffisante – Lecture – Élément cliquable (lien, bouton, scrollbar …) ● Taille relative (em, rem ou %) plutôt qu'absolue (px ou pt) ● Tester si police agrandie – ● Attention aux blocs avec une taille fixe Espace suffisant – Entre les lignes – Entre les paragraphes (1.5em plutôt que 1.2em) WordCamp Paris 2014 26/48
  • 27. CSS : Taille de la police WordCamp Paris 2014 27/48
  • 28. CSS : Contraste ● Bon contraste – ● Ni pas assez, ni trop (éviter #000000 sur #FFFFFF) Attention particulière : – Propriété CSS opacity – Dégradé – Ombre en CSS – Couleur par défaut pour les images de fond – Texte au dessus d'une image WordCamp Paris 2014 28/48
  • 29. CSS : Couleurs ● Pourquoi Facebook est bleu ? http://edition.cnn.com/2010/TECH/social.media/09/20/zuckerberg.facebook.list/ WordCamp Paris 2014 29/48
  • 30. CSS : Daltonisme ● Exemples de dyschromatopsie : Original ● Protanopie Deutéranopie Tritanopie Achromatopsie Ne pas passer d'information par une couleur – Coupler avec texte ou iconographie WordCamp Paris 2014 30/48
  • 31. CSS : Police ● Ne pas mettre en justifier ● Éviter les polices avec serif ● Éviter les textes en italique ● Polices spécifiques pour les dyslexiques – Une open source et une sous licence payante WordCamp Paris 2014 31/48
  • 32. CSS : Cacher en CSS ● Display:none pas lu par les lecteurs d'écran ● Alternative : Source : Bootstrap v3.0.0 WordCamp Paris 2014 32/48
  • 33. CSS : Liens ● Style distinct ● Lien actif : – – ● Utiliser :focus ou la propriété outline Tester Penser au style pour : – .current-menu-item – .current-page-ancestor – .current-post-ancestor – .current-post-parent – .current-menu-parent WordCamp Paris 2014 33/48
  • 34. CSS : Formulaire ● ● ● Champ actif mis en valeur Message « (*) Champs obligatoire » à placer avant le formulaire CSS3 – :valid – :invalid WordCamp Paris 2014 34/48
  • 35. Chapitre 4 1. État de l'accessibilité 2. HTML 3. CSS 4. Javascript 5. Contenu WordCamp Paris 2014 35/48
  • 36. Javascript : Général ● Tester la navigation au clavier – « onfocus » plutôt que « onclick » – Éviter le double clic ● Tester si javascript désactivé ● Attention à la manipulation du DOM ● Attention au focus – Prendre le focus : attribut tabindex="0" – Enlever le focus : attribut tabindex="-1" ● Modifier les attributs WAI-ARIA si nécessaire ● Éviter les polices en <canvas> WordCamp Paris 2014 36/48
  • 37. Javascript : Actions temporelles ● Éviter de limiter dans le temps ● Laisser le temps aux utilisateurs – – ● Slider Redirection Pouvoir augmenter la limite de temps WordCamp Paris 2014 37/48
  • 38. Javascript : Pièges ● Attention aux pièges – Infinite scrolling – Boucle sans fin – Événement keyup – Événement keydown – ... WordCamp Paris 2014 38/48
  • 39. Chapitre 5 1. État de l'accessibilité 2. HTML 3. CSS 4. Javascript 5. Contenu WordCamp Paris 2014 39/48
  • 40. Contenu : Titre de la page ● Pertinent ● Pas trop long WordCamp Paris 2014 40/48
  • 41. Contenu : Éditeur ● Respect sémantique WordCamp Paris 2014 41/48
  • 42. Contenu : Éditeur ● Éviter les doubles espaces entre 2 mots ● Choix des mots adaptés à la cible – Site généraliste : mots compréhensibles de tous – Site spécialisé : autorisé à utiliser des termes plus ciblés ● Casser les grands blocs de texte en paragraphes ● Titres compréhensibles et cohérents ● Hiérarchie des titres WordCamp Paris 2014 42/48
  • 43. Contenu : Sémantique ● Ne pas faire de paragraphe ou titre vide WordCamp Paris 2014 43/48
  • 44. Contenu : Liens ● Ancre pertinente – Télécharger un document : format, poids et langue – Si possible inférieur à 80 caractères ● Possibilité de compléter avec attribut title ● Éviter d'ouvrir dans une nouvelle fenêtre WordCamp Paris 2014 44/48
  • 45. Contenu : Image ● Titre : – ● Utile pour le Back-Office Légende : – – ● Apparaît sous l'image Éviter la redondance avec le texte alternatif Texte alternatif : – Éviter de commencer par « image de ... » – Longue description soit dans le texte ou faire un lien vers une page spécifique à proximité de l'image WordCamp Paris 2014 45/48
  • 46. Contenu : <iframe> ● Utiliser un attribut title WordCamp Paris 2014 46/48
  • 47. Contenu : Vidéo/Audio ● Sous-titre ● Audio-description ● Retranscription en langue des signes ● Éviter autoplay ● Éviter visionnage en boucle WordCamp Paris 2014 47/48
  • 48. Merci de votre attention WordCamp Paris 2014 48/48