Salut,
kiouz a écrit :
Apparement, certains développeurs pensent que les images des menus sont plutôt du contenu que de la structure.
Je pense que tu veux parler de contenu et de décoration, et non de structure.
Dans un site web, il y a des images qui sont porteuses d'informations. Par exemple, une bannière graphique, qui indique le titre du site. Ou une photo qui illustre un article.
Parce que ces images véhiculent de l'information, tu dois les placer dans le code HTML de la page, et tu dois renseigner un texte alternatif (
alt) approprié. C'est
la seule façon fiable de mettre l'information que l'image contenue à disposition de tous tes visiteurs, en toutes circonstances.
En effet, les images seront visibles même si ta feuille de style est inaccessible, ou désactivée par le visiteur. Les utilisateurs de lecteurs d'écran ou de navigateurs textes, ainsi que les robots d'indexation pourront accéder (même si c'est partiel) au contenu de l'image grâce au texte alternatif, et éventuellement à
longdesc.
D'un autre côté, il y a les images de décoration. Elles ne font qu'améliorer l'aspect graphique du site, elles ne sont pas porteuses d'une information. Elle n'ont donc rien à faire dans le code HTML, elles doivent être gérées via la feuille de style.
Il faut donc bien réfléchir à l'utilité de tes images et respecter la logique de séparation fond/forme qui régit le couple (X)HTML/CSS. La position des images (HTML ou CSS) est très importante, pour l'accessibilité et le référencement d'un site.
Evidemment, il existe des situations où il est plus simple de faire une petite entorse aux principes, et où tu voudras placer une image de décoration dans le code HTML. Dans ce cas, il suffira de lui donner un attribut alt vide (
alt=""). Mais il ne faut
jamais faire l'inverse et placer une image portant un contenu dans la feuille de style ...
le.troll a écrit :
pour ma part, je pense que l'idéal est d'avoir des images a la bonne taille directement. Comme ca, pas besoin de metre width height en css
+1. Mais il ne faut pas oublier qu'avoir les images directement à la bonne taille
ne dispense pas d'indiquer la hauteur et la largeur lorsqu'elles se trouvent dans le code HTML. Même si l'image est aux bonnes dimensions, le navigateur ne les connaît pas avant d'avoir chargé l'image et il risque de faire bouger le contenu au fur et à mesure de ce chargement, comme l'a expliqué FlorentG. Donc, dans la mesure du possible, renseignez les attributs
height et
width de la balise
img