Bonjour à tous,
Je post ici ce message pour avoir quelque informations supplémentaires sur les bonnes pratiques CSS lorsqu'on utilise des images (que ce soit pour le référencement, l’accessibilité ...)
Je détaillerai mon problème avec un cas pratique pour mieux vous expliquer ma pensé.
Je souhaite réaliser de manière propre, un lien vers une page d'inscription. Je souhaite que ce lien s'affiche avec une image et que cette image puisse être modifié au survol de la souris.
Jusque là rien de compliqué, voilà ce que j'avais fait en utilisant les background
Puis le CSS qui va avec
En relisant ce code, je me suis posé des questions sur le référencement :
Aucun texte dans mes lien, je pense que niveau référencement c'est moyen ?
Au niveau de l'accessibilité
Si une personne désactive le css, je n'ai pas la possibilité d'afficher un contenu alternatif (avec la balise "alt")
Suite à ces tests, la seul solution qui me parait envisageable consiste à utiliser une balise "img"
avec un peu de CSS
Je me retrouve maintenant avec une balise img, qui contiens un texte alternatif si le CSS est désactivé ou si l'image n'est pas affiché
Maintenant, c'est là que j'ai besoin de votre aide
Est ce que cette seconde façon de faire est plus "propre" ou est ce que ça reviens au même finalement ?
Il y à ensuite la possibilité de faire un rollover en Javascript, mais bon cela reviendrai au même que ce que j'ai fait en CSS pour mon second exemple ?
Dans les deux cas je me retrouve avec un lien pointant vers une page mais le contenu du lien reste vide (ou ne contiens qu'une image)
Est ce que la balise "alt" est prise en compte comme contenu du lien (même lorsque l'image s'affiche) ?
Dans ce cas, il faudrait également penser à mettre des mots clés dans cette balise, ou est ce que ça ne sert encore une fois, à rien ?
Je sais que ce sont des questions déja vues et revues, mais je tombe un peu partout sur des articles soit plus ou moins anciens, ou qui se contredise. Du coup quand on essaye de s'initier aux bonnes pratiques dans son coin, on est jamais sûr si la solution choisie et finalement la bonne
Toute remarque est bonne à prendre, n'hésitez pas à m'éclairer !
Modifié par diementis (12 Apr 2011 - 12:13)
Je post ici ce message pour avoir quelque informations supplémentaires sur les bonnes pratiques CSS lorsqu'on utilise des images (que ce soit pour le référencement, l’accessibilité ...)
Je détaillerai mon problème avec un cas pratique pour mieux vous expliquer ma pensé.
Je souhaite réaliser de manière propre, un lien vers une page d'inscription. Je souhaite que ce lien s'affiche avec une image et que cette image puisse être modifié au survol de la souris.
Jusque là rien de compliqué, voilà ce que j'avais fait en utilisant les background
<div id="inscription">
<a href="inscription.php"></a>
</div>
Puis le CSS qui va avec
#inscription a:link, #inscription a:visited
{
display:block;
height:25px;
width:190px;
background: url(../media/inscription.png) no-repeat;
}
#inscription a:hover, #inscription a:active
{
background: url(../media/inscription.png) 0 25px;
}
En relisant ce code, je me suis posé des questions sur le référencement :
Aucun texte dans mes lien, je pense que niveau référencement c'est moyen ?
Au niveau de l'accessibilité
Si une personne désactive le css, je n'ai pas la possibilité d'afficher un contenu alternatif (avec la balise "alt")
Suite à ces tests, la seul solution qui me parait envisageable consiste à utiliser une balise "img"
<div id="inscription">
<a href="inscription.php"><img src="inscription.png" alt="contenu alternatif ici ..." /></a>
</div>
avec un peu de CSS
#inscription a:link, #inscription a:visited
{
display:block;
overflow:hidden;
height:25px;
width:190px;
}
#inscription a:hover img, #inscription a:active img
{
display:block;
position:relative;
left:0;top:-25px;
}
Je me retrouve maintenant avec une balise img, qui contiens un texte alternatif si le CSS est désactivé ou si l'image n'est pas affiché
Maintenant, c'est là que j'ai besoin de votre aide
Est ce que cette seconde façon de faire est plus "propre" ou est ce que ça reviens au même finalement ?
Il y à ensuite la possibilité de faire un rollover en Javascript, mais bon cela reviendrai au même que ce que j'ai fait en CSS pour mon second exemple ?
Dans les deux cas je me retrouve avec un lien pointant vers une page mais le contenu du lien reste vide (ou ne contiens qu'une image)
Est ce que la balise "alt" est prise en compte comme contenu du lien (même lorsque l'image s'affiche) ?
Dans ce cas, il faudrait également penser à mettre des mots clés dans cette balise, ou est ce que ça ne sert encore une fois, à rien ?
Je sais que ce sont des questions déja vues et revues, mais je tombe un peu partout sur des articles soit plus ou moins anciens, ou qui se contredise. Du coup quand on essaye de s'initier aux bonnes pratiques dans son coin, on est jamais sûr si la solution choisie et finalement la bonne
Toute remarque est bonne à prendre, n'hésitez pas à m'éclairer !
Modifié par diementis (12 Apr 2011 - 12:13)