91 votes

HTML - comment faire d'une DIV entière un hyperlien ?

Comment faire d'un DIV entier un hyperlien cliquable. Cela signifie que je veux essentiellement faire :

<div class="myclass" href="example.com">
    <div>...</div>
    <table><tr>..</tr></table>
    ....
</div>

Et chaque fois que quelqu'un survole la myclass DIV, je veux que le DIV entier soit un lien hypertexte cliquable.

169voto

Joel Etherton Points 24155

Vous pouvez ajouter l'onclick pour JavaScript dans la div.

<div onclick="location.href='newurl.html';">&nbsp;</div>

MODIFIER : pour une nouvelle fenêtre

<div onclick="window.open('newurl.html','mywindow');" style="cursor: pointer;">&nbsp;</div>

25voto

SLaks Points 391154

Vous pouvez placer un élément <a> l'intérieur du <div> et le définir sur display: block et height: 100%.

16voto

Nick Annies Points 41

Vous avez juste besoin de spécifier le curseur comme un pointeur, pas une main, car le pointeur est maintenant la norme, donc, voici l'exemple de code de page :

<div onclick="location.href='portable-display-stands.html';" id="smallbox">The content of the div here</div>

et l'exemple CSS :

#smallbox {
    cursor: pointer;
}

Donc le div est maintenant un élément cliquable en utilisant 'onclick' et vous avez simulé le curseur de la main avec le CSS...travail fait, fonctionne pour moi !

12voto

Jimmy Breck-McKye Points 1134

C'est une réponse tardive, mais cette question apparaît fortement sur les résultats de recherche, il vaut donc la peine de répondre correctement.

Fondamentalement, vous ne devriez pas essayer de rendre un div cliquable, mais plutôt de créer une ancre de type div en donnant <a> display: block.

De cette façon, votre HTML reste sémantiquement valide et vous pouvez hériter des comportements typiques du navigateur pour les hyperliens. Il fonctionne également même si javascript est désactivé /les ressources js ne se chargent pas.

7voto

Cat Man Do Points 11771

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X