L'élément img est mal nommé: il ne reflète pas vraiment sa fonction en pratique.
À la suite d'un échange l'autre jour avec un collègue, je me suis dit que je devrais poster un petit billet en récapitulant les conclusions. J'y avais alors développé une réflexion sur la nature de l'élément img tel que je la perçois. J'en avais d'ailleurs déjà dit quelques mots sur la liste de diffusion Accesstech en avril 2008.
Dans la recommandation du W3C, il est précisé que The IMG element embeds an image in the current document at the location of the element's definition
. Il est peu probable, au vu de l'état actuel de la recommandation HTML5, que cette manière de présenter les choses changent.
Cependant, elle reflète une vision très centrée sur les navigateurs graphiques (sans jeu de mots...). En effet, quand le document contenant un élément img est parcouru par un outil de consultation non graphique, comme un lecteur d'écran par exemple,ce n'est évidemment pas l'image qui est restituée, mais bien son « alternative » fournie par les attributs alt et éventuellement longdesc.
Or une alternative n'est pas une « roue de secours » si l'image n'est pas présente : c'est bien une autre manière de présenter l'information. Cette information est une donnée hors contexte; c'est « quelque chose » que le rédacteur a voulu transmettre à son lectorat. Il a opté pour ce faire pour une publication Web par le truchement du langage HTML.. Dans ce processus de mise en forme de l'information, il a été amené à faire un choix éditorial en sélectionnant, à un moment donné, un mode de présentation: texte seul ou contenu graphique. Mais à la base, c'est bien d'une information unique dont il s'agit. Si par exemple il souhaite exposer l'évolution des ventes de réfrigérateurs de son entreprise, il aura le choix entre une présentation tabulaire ou un graphique (les deux solutions ne s'excluant pas mutuellement).
Un tableau favorise les utilisateurs dont le mode d'esprit est analytique, tandis qu'un graphique est plus facile à interpréter par les utilisateurs dont le fonctionnement mental est plus synthétique. Pourquoi ne pas franchir le pas et admettre que les deux formes de présentation de l'information sont réellement équivalentes?
L'élément img apparaît alors comme un moyen simple et élégant de fournir les deux mises en forme de l'information simultanément. Cela revient à ne plus considérer l'attribut src comme « plus nécessaire » que l'attribut alt. Après tout, ils jouent un rôle symétrique pour un navigateur graphique:
- quand
src est présent mais pas alt, c'est l'image qui est affichée, soit le contenu pointé par src;
- quand
alt est présent mais pas src, c'est le contenu textuel qui est affiché.
Par conséquent, la signification de l'élément
img peut être réévaluée: ce n'est plus seulement le moyen d'insérer une image dans un document HTML; c'est aussi bien plus, dans la mesure où c'est un élément qui permet de fournir une information donnée sous
deux formats différents simultanément.