En HTML5, c'est très simple. Il suffit d'omettre l'élément href
attribut.
<a>Do Nothing</a>
En MDN sur l'attribut href de la balise a :
href
C'était l'unique attribut requis pour les ancres définissant un lien source hypertexte, mais il n'est plus requis en HTML5.
Qu'en est-il du curseur en cas de survol ?
Les styles par défaut d'un navigateur peuvent ne pas transformer le curseur en pointeur, par exemple a
sans href
. Vous pouvez changer cela de manière universelle avec le CSS suivant.
a {
cursor: pointer;
}
<a>Do Nothing</a>
Cependant, il est probablement préférable d'être plus sélectif et de ne l'appliquer qu'aux éléments auxquels vous avez l'intention d'ajouter des gestionnaires d'événements.
Pourquoi ne pas le rendre focalisable par tabulation ?
Il suffit d'ajouter tabindex="0"
à l'élément.
<a tabindex="0">Do Nothing</a>
Est-il judicieux d'utiliser un a
sans lien ?
En général, non, il est préférable d'utiliser un button
et de le styliser à l'aide d'une feuille de style CSS. Mais quel que soit votre choix, évitez d'utiliser un élément arbitraire comme div
lorsque c'est possible, car ce n'est pas du tout sémantique.