Zoom désactivé
Silktide vérifie chaque page afin de détecter du code qui empêche les visiteurs de zoomer sur les appareils mobiles. Le geste pincer pour zoomer devrait toujours être disponible, car de nombreuses personnes en dépendent pour lire votre contenu.
Le code responsable est la balise de la page :
<!-- Problème : user-scalable=no et maximum-scale=1 bloquent tous deux le zoom -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<!-- Correctif : permettre aux utilisateurs de zoomer -->
<meta name="viewport" content="width=device-width, initial-scale=1">
Pourquoi c’est important
Le pincement pour zoomer est la façon dont les personnes malvoyantes lisent le Web sur un téléphone. C’est aussi la manière dont tout le monde gère les petits caractères, les cartes denses et les images détaillées. Une page qui le désactive rend tout cela impossible — il n’existe pas de solution de contournement qu’un visiteur puisse appliquer.
Le zoom est généralement désactivé pour des raisons esthétiques, afin d’éviter que la mise en page ne se décale. Le coût retombe entièrement sur les personnes qui ont le plus besoin de cette fonctionnalité, et les règles d’accessibilité exigent que le texte puisse être redimensionné. Certains appareils ignorent désormais cette restriction précisément parce qu’elle cause beaucoup de tort, mais de nombreux navigateurs la respectent encore.
Comment y remédier
- Supprimez
user-scalable=node chaque balise viewport. - Supprimez les valeurs
maximum-scalequi limitent le zoom à une valeur égale ou proche de la taille normale de la page (par exemplemaximum-scale=1). - Si votre mise en page se casse lorsque l’on zoome, corrigez-la avec un plutôt que d’empêcher les visiteurs de zoomer.
Comment Silktide teste ceci
- Chargez la page sur un appareil mobile simulé.
- Recherchez chaque balise meta viewport.
- Signalez toute balise qui bloque le zoom — soit
user-scalable=no, soit unmaximum-scalequi n’est pas supérieur à l’échelle à laquelle la page se charge déjà.
Dépannage
Je peux toujours zoomer sur mon iPhone
iOS ignore ces restrictions de viewport et autorise quand même le pincement pour zoomer. D’autres navigateurs et plateformes les respectent encore ; le code reste donc un véritable obstacle et doit être corrigé. Pour reproduire le problème, testez sur un appareil Android.
La balise est ajoutée par mon framework ou mon thème
Certains anciens thèmes et frameworks d’application injectent user-scalable=no par défaut. Recherchez un paramètre de viewport ou de zoom dans le thème, ou remplacez la balise dans votre modèle de page.