Ouverture des liens dans une nouvelle fenêtre

La propriété HTML target=”_blank” apparu dans la version 4.0 du langage HTML et enlevée dans la 4.01, quelques mois plus tard. Elle permet d’ouvrir un lien dans une nouvelle fenêtre.

Dans les fait, cette propriété est encore utilisée aujourd’hui sur la grande majorité des sites Web, soit dans sa forme direct (target=”_blank”) (Généralement sans importer le module XHTML correspondant), soit sous une forme déguisée en l’injectant via du javascript a l’exécution ou en utilisant la méthode de l’objet window.

Son utilisation est généralement motivée par le fait de ne pas vouloir que l’internaute quitte son site en cliquant sur un lien externe. L’idée a l’air séduisante au premier abord, mais il n’en est rien.

On oublie souvent que les gens savent généralement se servir d’un navigateur, ils ont soit appris sur le tas, soit au cours de leur parcour professionnel, ou encore directement à l’école ( C2I, B2I, … ). Ils savent donc contrôler l’ouverture des liens, ou à défaut, ils connaissent la touche F1 qui leur permet d’accéder à l’aide.

Pour rappel, CTRL + Click , Click centrale, ou SHIFT + Entrée sont des combinaisons de touches qui permettent d’ouvrir un lien dans une nouvelle fenetre ou un nouvel onglet suivant la configuration du navigateur (pour les navigateurs Firefox ou Internet Explorer dans l’univers Windows ou Linux).

Ils ont donc la possibilité de choisir s’ils veulent ou non ouvrir le lien dans le contexte courant, ou ouvrir la page en background, ou conserver la page de votre site ouvert ou non.

Il n’ai pas très sympathique d’imposer votre politique d’ouverture des liens à tous les utilisateurs. Elle risque d’énerver les gens plus qu’autre chose. Énervé un utilisateur lorsqu’il navigue sur votre site n’est jamais bon. De nombreux navigateurs peuvent être configurés pour afficher les pages ouvertes avec un target=”_blank” directement en arrière plan. Ils obligent donc les utilisateurs à changer manuellement d’onglet pour pouvoir voir l’onglet qu’ils viennent d’ouvir. Généralement, le comportement est souvent le même pour ces utilisateurs, fermeture de la page (que vous ne vouliez pas qu’il quitte) et perte de l’historique dans le menu “Précédent”. Vous vouliez garder l’utilisateur via cette technique, mais avez réussi tout le contraire, le faire fuir : félicitations.

Quand bien même, il est de bonne humeur et compréhensif vis à vis d’un site d’amateur, il continue à naviguer, si chaque site fait cela, on se retrouve au bout de 15 liens avec 15 fenêtres ou onglets ouverts. Vu la consommation mémoire des navigateurs et surtout des pages qui sont servie aujourd’hui (RIA, Flash, javascript, …), le schéma est souvent identique, personne ne ferme onglet après onglet, non les utilisateurs ferment tous les onglets d’un seul coup. Donc, on a forcé un utilisateur à garder la page de votre site ouvert pendant toute la durée de vie de sa session de navigation, mais il n’est jamais revenu. Pour peu que la page comporte de nombreuses animations qui tourne continuellement, vous réussirait non pas à faire revenir l’utilisateur mais à ralentir son ordinateur.

Ensuite, vu par le prisme de l’accessibilité des sites Web, l’ouverture dans une nouvelle fenêtre n’est vraiment pas terrible. Le fait de changer de contexte de navigation, et de perdre l’historique de navigation, est quelque chose d’assez pénible. Cette raison devrait suffire à elle seule à bannir les ouvertures dans des nouvelles fenêtres.

Au regard de tous ces éléments, je suis vraiment scandalisé la DGME dans les directives d’ergonomie (Section 2.1.2) qu’elle à érigé pour les sites publics, recommande l’ouverture dans de nouvelle fenêtre pour les liens externes.

L'ouverture de liens externes (i.e. renvoyant vers un autre site) doit se faire dans une nouvelle fenêtre ou onglet du navigateur.

Ou, peut être que la modernisation de l’État passe par la volonté de faire chier les gens. Surtout que la norme HTML, permet de définir non pas un attribut pour ouvrir dans une nouvelle fenêtre mais plutôt une relation entre la page et le lien, et de préciser la relation via l’attribut rel. Ainsi, un lien <a href=“example.com/lien.externe” rel=“external”>…</a>indique très clairement à un navigateur qu’il s’agit d’un lien externe. Libre à chacun de configurer son navigateur pour avoir le comportement désiré.

A la une
  • Rencontre du numérique 2019 - Nîmes
  • référencement naturel d'un hôtel
  • Développeur eZ Platform
  • Tech lead Symfony
  • Expert Qualité Web

Copyright - Sylvain FIX

2009 - 2019