Une image est insérée avec la balise img en spécifiant avec l'attribut src (source) le chemin de l'image à inclure (sous la forme d'une adresse réticulaire, URL) et avec l'attribut alt l'éventuel texte de remplacement de l'image :

HTML5/HTML
<img src="mon_image.png" alt="texte si l'image n'est pas affichée">
XHTML
<img src="mon_image.png" alt="texte si l'image n'est pas affichée" />

Par la suite, nous considérerons du HTML. Pour du XHTML, ajoutez simplement la barre de fraction avant la fermeture de la balise.

La balise img peut avoir divers attributs facultatifs. Seuls les attributs src et alt sont obligatoires.

  • align : alignement de l'image (peut prendre les valeurs top, bottom, middle, left ou right) ;
  • alt : texte de remplacement (affiché si le navigateur ne peut afficher l'image) ; cet attribut est obligatoire, il permet notamment à un malvoyant de comprendre l'image qu'il ne peut voir (son logiciel lit le texte à voix haute ou le transforme en braille) ;
  • title : titre de l'image (s'affiche en info bulle dans le navigateur) ;
  • border : largeur de la bordure de l'image (valeur exprimée en pixels) ;
  • height : hauteur de l'image (si aucune valeur spécifiée, l'image garde sa hauteur normale) ;
  • width : largeur de l'image (si aucune valeur spécifiée, l'image garde sa largeur normale).

L'attribut src

modifier

L'attribut src contient donc l'adresse à laquelle on va chercher l'image (voir le chapitre Liens). On peut utiliser une adresse absolue ou relative.

Il faut cependant proscrire l'inclusion des objets (images, sons, vidéo) situés sur d'autres sites, ce que l'on appelle des « liens à chaud » (hot links). En effet, cela génère du trafic sur le serveur cible au lieu de son propre serveur, ce que le serveur cible peut considérer comme du « vol de bande passante ». Par ailleurs, le fait que l'on utilise l'objet original n'implique pas un respect du droit d'auteur : certes on n'a pas fait de copie de l'objet, mais on utilise l'objet, et cela doit se faire avec l'accord de l'auteur et/ou de ses ayants droit.

Donc, si par exemple notre page web est http://www.monsite.com/mapage.html et que l'on veut inclure l'image http://www.autresite.com/images/img1.png, les deux solutions acceptables sont :

  • demander l'autorisation au webmestre du site http://www.autresite.com/, importer l'image sur son propre site et l'exploiter en local, en affichant l'origine de l'image et les conditions d'utilisation imposées par le site d'origine ;
par exemple, si l'on place l'image en http://www.monsite.com/image/img1.png, on peut écrire
<img src="/image/img1.png"  > <br>
Reproduit avec l'aimable autorisation de
<a href="http://www.autresite.com/">Autresite.com</a>,
tous droits réservés
  • ne pas inclure l'image mais faire le lien vers cette image, ou mieux vers la page Web contenant cette image ; par exemple
Voir l'illustration sur l'article dédié
du site <a href="http://www.autresite.com/lapage.html">Autresite.com</a>

L'attribut alt

modifier

Il est nécessaire de donner, pour chaque image, un texte de remplacement pour les navigateurs ne supportant pas l'affichage d'images ou pour des raisons d'accessibilité des pages web (cf normes W3C). Le texte de remplacement est spécifié par l'attribut alt :

<img src="bienvenue.png" alt="Bienvenue !" >

Lorsqu'une image ne véhicule pas d'information, ce texte doit être vide (n'oubliez pas que le alt est lu ou rendu en braille pour un malvoyant), l'attribut est alors présent sous la forme :

<img src="image_decorative.png" alt="" >

Note
Microsoft Internet Explorer affiche le texte alternatif dans une info-bulle ; ce comportement est erroné puisque c'est normalement le titre (voir ci-dessous) qui est affiché en info-bulle.

L'attribut title

modifier

Il est possible d'attribuer un titre à chaque image en plus de l'information alternative (alt). L'attribut title doit contenir une information optionnelle sur l'image, ou reproduire l'attribut alt: Les navigateurs affichent cette information dans une infobulle (tooltip en anglais) :

<img src="renard.png" alt="Renard en promenade" title="Renard en promenade" >
Remarque
Les attributs alt et title peuvent être cumulés.

Les attributs height et width

modifier

Si l'on omet ces attributs, l'image s'affiche en grandeur réelle (pixel pour pixel).

Si l'on indique une des dimensions (la largeur ou la hauteur), l'autre dimension est calculée pour que l'image s'affiche avec ses proportions originales.

Le fait d'indiquer les deux dimensions peut faciliter l'affichage : les images sont chargées après le texte, le navigateur peut ainsi réserver la place nécessaire, sinon, il doit décaler le texte au fur et à mesure que les images sont chargées. Il peut donc être intéressant d'indiquer les dimensions même si l'on utilise les dimensions originales de l'image. Cependant, l'auteur doit bien s'assurer que les proportions (rapport largeur/hauteur) sont respectées, sous peine que l'image s'affiche déformée.

Image contenant des liens

modifier

Une image elle-même peut être à l'intérieur d'une balise <a>…</a> : on peut alors cliquer sur l'image pour accéder à la ressource désignée. Par exemple :

<a href="http://fr.wikibooks.org">
   <img src="https://upload.wikimedia.org/wikipedia/commons/d/df/Wikibooks-logo-en-noslogan.svg" alt="Wikibooks" />
</a>


Pour plus de détails voir : Le langage HTML/Liens.
 Dr Johnson — lexicographeBoswell — biographeSir Joshua Reynolds — peintreDavid Garrick — acteurEdmund Burke — homme d'ÉtatPasqual Paoli — patriote corseCharles Burney — historien de la musiqueThomas Warton — poèteOliver Goldsmith — écrivainprob. ''The Infant Academy'', 1782peinture inconnueportrait inconnuserviteur — poss. Francis BarberUtilisez le bouton pour agrandir ou bien utilisé les hyperliens.
Exemple d'image découpée en zones menant vers différentes ressources. Les personnes représentées sont des membres du Literary Club ; cliquer sur une personne pour accéder à l'article correspondant.

L'image peut également être découpée en zones cliquables menant vers des ressources différentes. Pour cela :

  • la balise <img> doit contenir un attribut usemap dont la valeur rst un nom, le nom de la carte définissant les zones ;
  • la carte est définie par une balise <map>…<map> qui contient des zones ; chaque zone est définie par une balise <area />.

Par exemple :

<img src="image.png" alt="Carte du site" usemap="#nomdelacarte" />
<map name="nomdelacarte">
  <area shape="rect" coords="9,372,66,397" href="http://fr.wikipedia.org/" alt="Wikipédia" title="Wikipédia" >
</map>

Les attributs de la balise <area /> sont :

  • shape : définit la forme de la zone, ses valeurs peuvent être "rect" pour un rectangle, "poly" pour un polygone et "circle" pour un disque ;
  • coords : définit les coordonnées décrivant la zone, séparées par des virgules :
    • pour un rectangle, il s'agit des coordonnées des coins en bas à gauche et en haut à droite, sous la forme "x1, y1, x2, y2",
    • pour un polygone, il s'agit de la liste des coordonnées des points, sous la forme "x1, y1, x2, y2, …, xn, yn",
    • pour un disquee, il s'agit des coordonnées du centre et du rayon, sous la forme "xc, yc, r" ;
  • les attributs classiques d'un lien : essentiellement href et alt

Image SVG

modifier

Le SVG étant du XML, comme le XHTML, il est possible de définir une image SVG directement à l'intérieur du code HTML. Par exemple :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html>
  <head>
    <title> Rectangle noir </title>
  </head>

  <body>
    <p>Voici un rectangle noir :</p>
    <svg width="3cm" height="2cm" version="1.1"
         xmlns="http://www.w3.org/2000/svg">
      <rect
        x="0.5cm" y="0.5cm" width="2cm" height="1cm"
      />
    </svg>
  </body>
</html>


Pour plus de détails voir : Découvrir le SVG.