1174 sujets

Accessibilité du Web

Le validateur OCAWA me rencoie l'information suivante :

Balise  <img>   : Spécifier les dimension d'une image (width) [ref A92]


Est-ce obligatoire d'indiquer les tailles des images ? Ne va-t-on pas à l'encontre du principe de séparation de la structure XHTML et la mise en page CSS en indiquant les attributs WIDTH et HEIGHT ?
Modifié par EricLB (02 Nov 2005 - 21:04)
Bonjour,

Spécifier la taille des images permet de prévoir leur emplacement sur la page même si l'affichage des images a été désactivé et/ou de charger les images en fonction de leurs dimensions (paramétrable sur les navigateurs de mobiles ..j'ai lu cela quelque part, mais je ne sais plus où).

Si l'image est dans le document, elle a une valeur informative, auquel cas le principe de séparation ne s'applique pas dans ce cas, les attributs de taille ayant une fonction pratique, amha.
Merci Véro pour ces précisions.

Si tu retrouves les sources de tes informations n'hésite pas à m'en faire part, je suis preneur !
a écrit :
L'orientation des Standards est claire : tous les attributs de taille, de position, de couleurs, d'alignement (width, height, align, font, color,...),... NE DOIVENT PAS figurer sur la page html, mais sur ce qui va gérer l'affichage, c'est à dire la feuille de style CSS.


Trouvé sur le site dans la rubrique "Faire une mise en page sans tableaux".

Une exception pour la balise <img> ? Ou un point à améliorer pour les navigateurs comme pour le cellspacing des tableaux ?
Administrateur
<img> est effectivement une exception car les attributs de width et height sont considérés comme des informations pertinentes pour une image.
Bonsoir,

a écrit :
<img> est effectivement une exception...


Petite correction : <img> n'est pas une exception, ou alors il y en à d'autres comme un contener object diffusant un contenu multimedia...

Les attributs width et height ne sont pas des attributs de style pour une image car ils indiquent qu'elle est sa dimension nominale, il est donc tout à fait normal de les utiliser dans le code HTML.

Par ailleurs, comme le rappelle laurent dans un autre post, les périphériques mobiles, à zone d'affichage réduite, peuvent utiliser ces indications pour éviter d'afficher des images de dimensions trop importantes.

Pour être complet, on peut gérer des dimensions d'images par CSS dans certains cas, notamment quand on utilise des images décoratives aux fins de créer des effets d'ombrage, des simulations de cadre ou de bordure ou encore de "fausses" transparences.
Dans ces cas précis, assez rares au demeurant, l'utilisation de CSS permet de pallier aux différences de gestion des effets de marges par les navigateurs.
Il convient néanmoins de s'assurer que la dimension nominale des images utilisées est compatible avec les petites résolutions.

Conclusion : toujours indiquer les dimensions des images dans le code html, sauf exception pour prendre en charge des contraintes de design en attendant que les (allez je corrige : LE ) navigateur implémente correctement des propriétés CSS notoirement indispensables.

Jean-pierre
Modifié par jpv (21 Sep 2005 - 04:58)
EricLB a écrit :
L'orientation des Standards est claire : tous les attributs de taille, de position, de couleurs, d'alignement (width, height, align, font, color,...),... NE DOIVENT PAS figurer sur la page html, mais sur ce qui va gérer l'affichage, c'est à dire la feuille de style CSS.


Trouvé sur le site dans la rubrique "Faire une mise en page sans tableaux".

Une exception pour la balise <img> ? Ou un point à améliorer pour les navigateurs comme pour le cellspacing des tableaux ?

Aucun des deux. Pour préciser la réponse apportée par jpv, heigth et width appartiennent toujours aux formats HTML4.01 et XHTML1.0, pour les éléments suivants :
- hr et pre (width uniquement) en transitional et en frameset
- applet, iframe, td et th (height et width) en transitional et en frameset
- col et colgroup (width uniquement) en strict, transitional et en frameset
- table, img et object (height et width) en strict, transitional et en frameset

Pourquoi ?
- Parce qu'HTML4.01 et XHTML1.0 ne sont pas des langages de structuration totalement abstraits, mais conservent une part descriptive de présentation, de même que le flux CSS repose sur l'ordre du flux HTML.
- Parce que ces attributs ont une utilité pour ces éléments dans des scénarios donnés (exemples de la gestion des images par les mobiles, de l'affichage progressif par les navigateurs)

Il est donc toujours possible et approprié d'utiliser ces attributs pour ces éléments en fonction du format (X)HTML choisi. Les objections à leur usage relèvent de la querelle idéologique sans rapport avec la norme.
Modifié par Laurent Denis (21 Sep 2005 - 05:21)
Bonjour,

J'avais eu un échange avec Ocawa à ce sujet, cela portait sur une image "W3C valide" dont les dimensions d'image étaient indiquées par un "style", donc en CSS.

Le validateur mentionnait une erreur et demandait "width" et "height".

Le point de vue d'Ocawa :

Ocawa a écrit :
La démarche d'Ocawa au sujet des images et de ses attributs "width" et "height" est la suivante :

Le fait d'indiquer le "width" et "height" de l'image permet, avant que les images soient chargées, au navigateur de connaitre l'espace à réserver pour celles-ci. En effet, si un internaute utilise un agrandisseur d'écran et qu'il est focalisé sur le haut droit de sa page internet, qu'il commence à lire cette page et qu'aprés 2/3 secondes (chargement de l'image haut droite par exemple), le texte sur lequel il se situe descendera pour laisser place à l'image. Le visiteur sera donc perturbé par cette "modification de visuel".

Modifié par jcm (21 Sep 2005 - 07:24)
Merci pour toutes ces infos complémentaires.

J'ai entre temps revu ma copie en ajoutant tous les "width" et "height" sur mon site.

Ce point demandait précision !
Laurent Denis a écrit :
- Parce que ces attributs ont une utilité pour ces éléments dans des scénarios donnés (exemples de la gestion des images par les mobiles, de l'affichage progressif par les navigateurs)

Dans le même ordre d'idée, n'aurait-il pas été utile d'avoir un attribut permettant d'indiquer le poids de l'image (ou de n'importe quel objet), pour faciliter le tri aux agents-utilisateurs devant faire avec une faible bande passante ?
djfeat a écrit :

Dans le même ordre d'idée, n'aurait-il pas été utile d'avoir un attribut permettant d'indiquer le poids de l'image (ou de n'importe quel objet), pour faciliter le tri aux agents-utilisateurs devant faire avec une faible bande passante ?


Certes, à qui s'adresse cette question au fait ? Smiley lol
Un peu à tout le monde, voire à n'importe qui (ou encore à qui veut) en fait.

EDIT : Ah bah appremment il y a un attribut de ce genre (content-length) prévu en XHTML2. Chouette.
Modifié par djfeat (21 Sep 2005 - 13:27)