Je donnerai ci-dessous des exemples de liens en code HTML:
<a href="./add.php?page=1" target="_blank"><div class="menu-button" id="menu-btn-3">Add</div></a>
<a href="/index.php?page=2"><button type="button" class="button" style="background-color: rgb(32, 32, 32);">Next</button></a>
<a href="./profile-added.php?page=1" target="_blank">Add</a>
Deux premiers liens contiennent en tant que texte d'ancrage des balises div et button, qui ont également un texte d'ancrage, mais en clair.
Troisième des exemples est juste un lien normal avec un texte d'ancrage simple.
Utiliser un exemple avec un texte d’ancrage non lié à une cible affecterait mon classement SEO? Devrais-je utiliser la troisième option à la place pour éventuellement améliorer mon classement?
Plus: si je vois ce type de lien:
<a><img /><a>
Est-il plus convivial pour les crawlers de donner du texte d'ancre à la balise link ou de ne laisser que la balise alt avec la description de l'image?
Seuls les très mauvais moteurs de recherche (le cas échéant) auraient un problème avec les éléments enfants de a
, car ils sont très courants et utiles. En substance, ce n’est pas différent des autres éléments ayant des éléments enfants.
Cependant, vous ne devez utiliser que des éléments enfants valides:
button
(ou tout autre élément "contenu interactif") n'est pas autorisédiv
(ou tout autre élément de niveau bloc) n'est autorisé qu'en (X) HTML5 (mais de nombreux moteurs de recherche plus anciens peuvent probablement le gérer aussi, car ce n'était pas une erreur inhabituelle dans HTML 4.01 fois)Mais des éléments comme span
, b
, i
, em
, strong
, code
, img
, abbr
, etc. (et les éléments de bloc dans (X) HTML5) devraient bien se passer.
Si les liens contenant un img
doivent avoir un texte d'ancrage ou non, cela dépend du contenu réel: dans certains cas, vous souhaitez/avez besoin de texte supplémentaire, dans d'autres cas, vous ne l'êtes pas. Cependant, vous ne devez jamais dupliquer les informations données dans l'attribut alt
.