Lors du test de mon code à l'aide du validateur w3 html5 , je reçois le message d'avertissement suivant:
Avertissement : l'attribut
name
est obsolète. Envisagez plutôt de placer un attributid
sur le conteneur le plus proche.
Question (s):
<a>
est-il maintenant obsolète? id
au lieu de name
?? Les balises d'espace réservé vides sont-elles obsolètes et les ancres peuvent-elles simplement pointer sur n'importe quel élément ayant un identifiant?
Je préfère passer les utilisateurs aux balises de titre (suivant le comportement par défaut de MediaWiki) où des liens dans la page sont nécessaires, mais vous pouvez effectivement indiquer l'ID de n'importe quel élément.
Si vous devez faire passer les utilisateurs aux liens de la page, également appelés identificateurs de fragment , vous pouvez définir l'attribut id
(qui est - tilisé pour plus que simplement frag ids ) sur l'élément any. Ensuite, utilisez le #
habituel dans l'URL d'un attribut href
d'un élément a
. Voici un exemple:
<body>
<p>Despite the many
<a href="#benefits-of-gum-chewing">benefits</a>
you may experience while chewing gum, there are also many drawbacks,
especially with
<a href="http://www.example.org/sugar.html#cons">non-sugarless</a>
gum.</p>
...
<section id="benefits-of-gum-chewing">
<h1>Benefits of Gum Chewing</h1>
...
</section>
</body>
Lors de la rédaction de mes propres pages, j'aime bien attribuer une id
à chaque balise <section>
(HTML5), même si je ne prévois pas l'utiliser. La valeur de id
est une version conviviale du contenu de son en-tête. Vous pouvez obtenir le même effet en affectant le même id
à un <h1>
, etc.
Enfin, les balises vides <a>
ne sont pas obsolètes, comme indiqué dans spécification HTML5 :
Si l'élément
a
n'a pas d'attributhref
, il représente un espace réservé pour l'emplacement où un lien aurait autrement été placé…
En outre, il en va de même pour area
elements :
L'attribut
href
sur les élémentsa
etarea
n'est pas requis; lorsque ces éléments ne possèdent pas d'attributshref
, ils ne créent pas de liens hypertexte.
Pour HTML5, l'attribut name
est désormais obsolète. Vous devez donc utiliser id
à la place de name
. Sinon, tout le reste est la même.
<a>
n'est PAS obsolète.