Le piège des onglets: pourquoi forcer l'ouverture de nouveaux onglets est une mauvaise pratique en UX

· Silas Joisten · Temps de lecture: 2 minutes
Open in new tab

Nous l'avons tous fait — ajouter target="_blank" à un lien pour « aider les utilisateurs » à rester sur notre site. Mais ce qui semble être une commodité inoffensive crée souvent de la confusion, diminue l'accessibilité et introduit des risques de sécurité cachés.

1. L'UX & l'accessibilité : Respecter les attentes des utilisateurs

Les utilisateurs attendent du contrôle — pas de surprises

Quand ils naviguent sur un site web ou une application, les utilisateurs s'attendent à un comportement cohérent. Lorsqu'ils cliquent sur un lien, il devrait s'ouvrir dans le même onglet — sauf s'ils décident autrement. Forcer un nouvel onglet rompt ce modèle mental et diminue l'autonomie de l'utilisateur.

Comme le notent les directives d'accessibilité du W3C (WCAG 2.2, §3.2.5), les changements de contexte inattendus (comme un nouvel onglet ou une nouvelle fenêtre) peuvent désorienter les utilisateurs, en particulier ceux qui utilisent des technologies d'assistance à l'accessibilité numérique.

Lorsque target="_blank" est appliqué sans avertissement, les lecteurs d'écran ou les utilisateurs de clavier peuvent même ne pas réaliser qu'ils ont changé de contexte — une expérience frustrante et déroutante.

Le bouton « Précédent » cassé

Ouvrir un nouvel onglet signifie que le bouton Précédent du navigateur ne fonctionne plus dans le parcours de l'utilisateur. Les utilisateurs ne peuvent pas simplement « revenir en arrière » — ils doivent rechercher l'onglet précédent. Cette petite rupture de flux ajoute une charge cognitive et perturbe la navigation.

Une discussion sur UX Stack Exchange le résume le mieux :

target="_blank" brise le comportement normalement attendu du navigateur.

L'expérience mobile en souffre aussi

Sur les appareils mobiles, la gestion des onglets est fastidieuse. Les utilisateurs ne réalisent pas nécessairement qu'un nouvel onglet s'est ouvert, les amenant à fermer le navigateur ou à abandonner la session.

2. Les pièges techniques et de sécurité

La vulnérabilité window.opener

Chaque fois que vous ouvrez un lien avec target="_blank", le nouvel onglet reçoit une référence à la page d'origine via window.opener. Par conséquent, la page liée — si elle est malveillante — peut modifier ou rediriger la page source :

window.opener.location = 'https://phishing.example.com';

Il s'agit d'une vulnérabilité bien documentée (Perishable Press, OWASP).

Pour l'atténuer, associez target="_blank" à rel="noopener" ou rel="noreferrer" :

<a href="https://example.com" target="_blank" rel="noopener">Lien externe</a>

La performance et la maintenance

Chaque nouvel onglet consomme de la mémoire. Sur les appareils bas de gamme, plusieurs onglets ouverts peuvent ralentir la performance. Et si vous ajoutez target="_blank" de manière sélective, il est facile d'oublier les attributs de sécurité.

3. Des considérations SEO et analytiques

Le SEO est aussi concerné. Lighthouse de Google signale les liens externes utilisant target="_blank" sans rel="noopener" comme un risque de sécurité.

Cela n'affecte pas directement le classement, mais une mauvaise UX et des utilisateurs désorientés augmentent les taux de rebond, nuisant indirectement au SEO.

4. Quand target="_blank" peut avoir du sens

Parfois, utiliser target="_blank" peut s'avérer la bonne solution. Voici les exceptions :

  • Les ressources de référence : par exemple, ouvrir de la documentation à côté d'un formulaire.

  • Des téléchargements ou des PDF : les utilisateurs s'attendent à ce qu'ils s'ouvrent dans un nouvel onglet.

  • Des tâches longues : pour éviter de perdre la progression.

Suivez bien les bonnes pratiques :

  1. Ajoutez toujours rel="noopener".

  2. Avertissez les utilisateurs visuellement (icône ou info-bulle).

  3. Maintenez un comportement cohérent.

  4. Testez l'accessibilité avec des lecteurs d'écran.

5. Les meilleures alternatives à target="_blank"

  • Utilisez une navigation claire et des fils d'Ariane à la place.

  • Laissez les utilisateurs décider comment ouvrir les liens (Ctrl+Clic, Cmd+Clic).

La clé, c'est de respecter le choix de l'utilisateur pour créer une meilleure UX.

Conclusion

target="_blank" peut nuire à l'UX, à l'accessibilité et à la sécurité. Utilisé avec parcimonie et avec les protections appropriées, elle est une solution acceptable — mais qui ne doit jamais être utilisée par défaut.

Chez SensioLabs, nous croyons que la confiance commence par le respect du contrôle de l'utilisateur. Pour cette raison, nous recommandons activement de mettre en œuvre des solutions qui empêchent l'ouverture de nouveaux onglets dans vos développements.

Références

Améliorez votre UX — clic après clic

Une excellente expérience utilisateur commence par des choix simples. Découvrez comment créer des interfaces web accessibles et intuitives avec Symfony et les bonnes pratiques de SensioLabs.

Image