-
+
@@ -24,12 +32,12 @@ const image = imageSrc(props.image)
diff --git a/pages/eco.md b/pages/eco.md
new file mode 100644
index 0000000..1ea0b7d
--- /dev/null
+++ b/pages/eco.md
@@ -0,0 +1,6 @@
+---
+layout: title-image
+image: brumm.avif
+---
+
+#
Sobriété et performances
diff --git a/public/images/field.jpg b/public/images/field.jpg
new file mode 100644
index 0000000..ec1352b
Binary files /dev/null and b/public/images/field.jpg differ
diff --git a/public/images/surricate.jpg b/public/images/surricate.jpg
new file mode 100644
index 0000000..ddef5c5
Binary files /dev/null and b/public/images/surricate.jpg differ
diff --git a/slides.md b/slides.md
index 733e961..3e7f3b9 100644
--- a/slides.md
+++ b/slides.md
@@ -33,13 +33,9 @@ layout: intro
#
L'accessibilité numérique en 10 étapes
-
-
---
hideInToc: true
layout: bullets
@@ -122,10 +118,9 @@ certains sont temporaires, certains arrivent avec l'âge
---
layout: bullets
hideInToc: true
-hide: true
---
-## L'accessibilité du Web englobe tous les handicaps qui affectent l'accès au Web, notamment :
+## L'accessibilité numérique englobe tous les handicaps qui affectent l'accès au Web, notamment :
- auditifs
- cognitifs
@@ -251,13 +246,15 @@ image: ours.jpg
# 3.
Formulaires
-**Toujours** associer un `label` aux champs `input`, `select`, `textarea`, `meter`, `progress`.
+- Associez **toujours** un `label` aux champs `input`, `select`, `textarea`, `meter`, `progress`
+- Indiquez clairement les champs obligatoires
+- Ne désactivez pas le bouton d'envoi
```html{2,3}
// [!code word:name]
```
@@ -279,8 +276,6 @@ Si le `label` doit être masqué, utilisez une classe CSS `visually-hidden` (ou
-[Qu'est-il arrivé au champ texte ?
Vidéo en anglais.](https://briefs.video/videos/what-happened-to-text-inputs/)
-
---
layout: content
---
@@ -307,6 +302,8 @@ Proposez du remplissage automatique et des claviers adaptés si besoin.
```
+
[Qu'est-il arrivé au champ texte ? Vidéo en anglais.](https://briefs.video/videos/what-happened-to-text-inputs/)
+
---
@@ -349,23 +346,121 @@ image: pierre.jpeg
# 6.
Simplifiez l'interface, privilégiez
le contenu
-- ne cachez pas le contenu
+- ne cachez pas le contenu ([carousel much?](https://shouldiuseacarousel.com/), [tabs much?](https://www.youtube.com/live/XntrwuBjE5c?feature=shared&t=1582))
- n'animez pas (trop) le contenu
`@media (prefers-reduced-motion: no-preference) { go crazy 🤪 }`
- ne gênez pas le contenu
- soulignez les liens, ne soulignez rien d'autre
- ne supprimez pas le focus
- n'utilisez pas uniquement la couleur pour indiquer un état
+- faites des phrases courtes et [faciles à comprendre](https://www.culture.gouv.fr/Thematiques/developpement-culturel/Culture-et-handicap/Facile-a-lire-et-a-comprendre-FALC-une-methode-utile)
---
layout: title-image
image: marmotte.jpg
---
-# 7. Chouchoutez
les images
+# 7. Chouchoutez
les images et vidéos
+
+## images
- ajoutez systématiquement l'attribut `alt`
- `alt=""` si l'image est décorative
- - `alt="[...]"` si l'image est porteuse d'information
+ - `alt="[DESCRIPTION]"` si l'image est porteuse d'information
- renseignez si possible les attributs `width` et `height` pour éviter le "
layout shift"
-- optimisez et convertissez dans des formats récents (ex. `webp`, `avif`)
+- [redimensionnez, optimisez et convertissez](https://squoosh.app/) dans des formats récents (ex. `webp`, `avif`)
+
+## vidéos
+
+- ne lancez pas la lecture automatiquement
+- [redimensionnez, optimisez et convertissez](https://handbrake.fr/) dans des formats récents (ex. `h265`, `av1`)
+
+---
+layout: title-image
+image: tigre.avif
+image-align: right
+---
+
+# 8. Éléments
obligatoires
+
+- ajoutez systématiquement les attributs :
+ ``
+- signalez les changements de langue dans le contenu avec `lang`
+- renseignez un `title` pour chaque page
+- n'utilisez pas une balise pour faire de la mise en forme (ex. `h3` à la place d'un `h2` pour le rendre plus petit).
+
+
**Astuce :** créez une classe correspondant à chaque niveau de titre afin de garder la hiérarchie intacte.
+
+```css
+/* [!code word:.h2] */
+h2,
+.h2 {
+ font-size: 4rem;
+ font-weight: bold;
+}
+/* [!code word:.h3] */
+h3,
+.h3 {
+ font-size: 3rem;
+ font-weight: 300;
+}
+```
+
+---
+layout: title-image
+image: surricate.jpg
+---
+
+# 9. Trucs
en plus
+
+- Designez pour `320px` de large au minimum
+- Ajoutez au moins un [lien d'évitement](https://accessibilite.numerique.gouv.fr/methode/glossaire/#liens-d-evitement-ou-d-acces-rapide)
+- Ne changez pas [l'ordre de tabulation](https://accessibilite.numerique.gouv.fr/methode/glossaire/#ordre-de-tabulation) de la page
+- Capturez le
focus dans les fenêtre modale/menu
+- Proposez au moins deux systèmes de navigation (menu, plan du site, moteur de recherche)
+- [N'abusez pas d'ARIA](https://briefs.video/videos/what-is-aria-even-for/)
+ > Les pages d'accueil avec de l'ARIA affichent en moyenne 34,2 % d'erreurs (détectées) en plus que celles sans ARIA.
+ >
[source](https://webaim.org/projects/million/#:~:text=Home%20pages%20with%20ARIA%20present%20averaged%2034.2%25%20more%20detected%20errors%20than%20those%20without%20ARIA)
+
+---
+layout: title-image
+image: field.jpg
+ratio: 1fr 1fr
+---
+
+# 10. (in)
Formez-vous
+
+## Formations
+
+- [Access42](https://formations.access42.net/formations/)
+- [
Practical Accessibility](https://practical-accessibility.today/)
+
+## Ressources
+
+- [Référentiel général d’amélioration de l’accessibilité (RGAA)](https://accessibilite.numerique.gouv.fr/)
+- [Blog Access42](https://access42.net/blog/)
+- [Webbed Briefs](https://briefs.video/) (vidéo, anglais)
+- [Adrian Rosseli](https://adrianroselli.com/) (blog, anglais)
+
+## Conférences
+
+- [Paris Web](https://www.paris-web.fr/)
+- [a11y Paris](https://www.a11yparis.org/)
+- [CSS Day](https://cssday.nl)
+
+---
+layout: quote
+---
+
+::quote::
+
+#
Rien n'est accessible à tout le monde. Par conséquent,
tout ce que vous ajoutez à votre interface ne peut que la rendre
moins accessible. La simplicité
(sobriété) est le seule remède.
+
+::default::
+
+Heydon Pickering
[The Folly of Chasing Demographics](https://www.youtube.com/watch?v=XntrwuBjE5c)
+
+---
+src: ./pages/eco.md
+hide: false
+---
diff --git a/styles/base.css b/styles/base.css
index f4bb4cd..bc0d2fc 100644
--- a/styles/base.css
+++ b/styles/base.css
@@ -30,7 +30,7 @@ body {
text-wrap: balance;
}
:is(h1, h2, h3, h4, .h2, .h3, .h4) + * {
- margin-block-start: var(--space-s);
+ margin-block-start: var(--space-xs);
}
:is(h1) {
max-inline-size: 20ch;