Page 1 sur 1

div et ancre

Posté : 19 août 2008, 15:50
par jimmyboy
bonjour à tous(tes),

pourriez m'aider dans ma requête : j'ai 2 div placées en css l'une à coté de l'autre. Dans la 1ere j'ai une liste de lien que j'aimerai faire pointer chacun vers des ancres à l'interieur d'un texte contenu dans la 2eme div... je vois pas trop comment faire..
Merci à tous.

Code : Tout sélectionner

<div id="txt_auteur2"><a href="index2.php?options=auteur&lang=fr#test1" title="Magazines">Magazines</a><br /><a href="index2.php?options=auteur&lang=fr#test2" title="Documentaires">Documentaires</a> </div> <div id="txt_auteur3"><a name="#test1">Les sauveurs de vies : pompiers du monde " en 2002</a><br /><br /><a name="#test2">Autre texte...</a> </div>

Posté : 19 août 2008, 16:02
par guilt92
Je ne suis pas sur de comprendre la question...

Les ancres sont indépendantes des div...

Pourquoi pas tout simplement :

Code : Tout sélectionner

<div id="txt_auteur2"><a href="#test1" title="Magazines">Magazines</a><br /> <a href="#test2" title="Documentaires">Documentaires</a> </div> <div id="txt_auteur3"><a name="#test1">Les sauveurs de vies : pompiers du monde " en 2002</a><br /><br /><a name="#test2">Autre texte...</a> </div>
Bon bien sur faut ajouter des <br/> pour voir que l'ancre fonctionne, mais elle fonctionne...

Posté : 19 août 2008, 16:29
par jimmyboy
salut,

effectivement les ancres dans la div 1ere pointent vers des <a name="" d'une autre div.. et elles sont bien indépendantes.. donc aucun effet..

Posté : 19 août 2008, 16:41
par Cyrano
Au lieu d'utiliser l'attribut name d'une balise <a>, sers-toi de l'identifiant du contenant. Par exemple, sur la base de ton exemple de code, au lieu de faire :

Code : Tout sélectionner

<a href="#test1">...
Qui pointe sur le

Code : Tout sélectionner

<a name="#test1">...
utilise plutôt :

Code : Tout sélectionner

<a href="#txt_auteur3">...
Ça va pointer sur le <div> qui a cette valeur en attribut id (sans le #).

Et du coup, tu n'as plus besoin d'ajouter le

Code : Tout sélectionner

<a name="...

Posté : 19 août 2008, 17:10
par Invité
oui, merci mais je crois qu'on s'est pas compris :

quand je clique sur un lien de la div 1 je souhaite pointer vers une ancre placée dans mon texte qui est contenu dans la div 2..
donc si je fais

<a href="#txt_auteur3">... cela va bien pointer vers la div.. mais pas sur l'ancre.. ou plutôt l'endroit exacte du texte que j'aimerai afficher :roll:

Posté : 19 août 2008, 18:24
par Invité
ok, autant pour moi : suffisait de mettre un <a href="#test2"> et un <p id="test2">bla</p> de l'autre coté et zou ca fonctionne c tout simple, le <a name="" est un peu trop vieux je crois..

Merci pour votre aide.

@+ :D

Posté : 19 août 2008, 18:27
par Victor BRITO
oui, merci mais je crois qu'on s'est pas compris :

quand je clique sur un lien de la div 1 je souhaite pointer vers une ancre placée dans mon texte qui est contenu dans la div 2..
donc si je fais

<a href="#txt_auteur3">... cela va bien pointer vers la div.. mais pas sur l'ancre.. ou plutôt l'endroit exacte du texte que j'aimerai afficher :roll:
Dans ce cas, déplace ton attribut id vers l'endroit exact où tu veux que se trouve l'ancre.

À noter, soit dit en passant, que l'attribut name, en dehors des champs de contrôle d'un formulaire (élément FORM exclu) et des éléments META, MAP et PARAM, n'est pas autorisé en mode strict (que ce soit en HTML 4 ou en XHTML), puisque l'attribut id existe pour identifier un élément.