Page 1 sur 1

lien html

Posté : 29 déc. 2005, 17:29
par lionceau90
Comment peut-on faire pour que toute une cellule d'un tableau devienne un lien?et pas seulement le texte qu'elle contient?
Merci

Posté : 29 déc. 2005, 17:40
par alexbad
Tu peux mettre le lien autour de la cellule:

Code : Tout sélectionner

<a href="lien.php"><td>ma cellule</td></a>
Mais ça ne fonctionne pas sur IE, autrement, y'a pas moyen.

Posté : 29 déc. 2005, 18:01
par lionceau90
merci de ta réponse.Effectivement sa marche mais le problème c'est que l'on ne voit pa que c'est un lien!Lorsqu'on passe dessus avec la souris la main(qui indique le lien) ne s'affiche pas.
Comment je peux faire?

Posté : 29 déc. 2005, 18:07
par alexbad
Bah, faudrait probablement jouer avec les curseur avec javascript et des onmouseover. C'était probablement de ce problème que je parlais... sans trop m'en rappeller. Mais par contre, il y a une solution CSS qui fonctionne à tout coup, il faut juste te trouver un curseur...:

Code : Tout sélectionner

td { cursor:url("tonfichier.cur"); }

Posté : 29 déc. 2005, 19:15
par fab

Code : Tout sélectionner

<td onclick="this.document.location='http://google.com'">google</a>
je suis pas sur pour le this.document.location

Posté : 30 déc. 2005, 01:01
par Cyrano
Tu peux mettre le lien autour de la cellule:

Code : Tout sélectionner

<a href="lien.php"><td>ma cellule</td></a>
Mais ça ne fonctionne pas sur IE, autrement, y'a pas moyen.
Scrongneugneu, quand je vois des horreurs de ce calibre, j'ai envie de botter des fond de culottes :langue:

Non, on ne peut pas faire ça, ce n'est pas valide ni même conforme.

Pour réaliser ça, il faut utiliser un style CSS sur la cellule d'une part et sur le contenu d'autre part:

Code : Tout sélectionner

td { padding: 0; } td a { display: block; margin: 0; }
Essaye déjà avec ça ;)

Posté : 30 déc. 2005, 13:34
par albat
Personne n'a pensé au pixel transparent ? ;)
<td style="width:200px;height:30px">
    <a href="page.php"><img src="pixel_transparent.gif" width="200" height="30" alt=""></a>
</td>
:!: Une petite précaution : le contenu de ta cellule doit être une image en background.

Posté : 30 déc. 2005, 14:26
par Cyrano
Personne n'a pensé au pixel transparent ? ;)
<td style="width:200px;height:30px">
    <a href="page.php"><img src="pixel_transparent.gif" width="200" height="30" alt=""></a>
</td>
:!: Une petite précaution : le contenu de ta cellule doit être une image en background.
Ça pose un problème et t'oblige quand même à utiliser un style CSS : Si en effet ton lien encadre un pixel transparent, ce dernier ne peut pas être en arrière-plan : ça veut dire que le texte lui-même pour être centré dans ta cellule devra être positionné en relatif ou en absolu dans la cellule pour se trouver par dessus ton pixel transparent.

Posté : 30 déc. 2005, 15:49
par albat
Le pixel transparent est en effet en avant-plan.
C'est pourquoi le contenu de la cellule doit, lui, être en arrière-plan.

Posté : 30 déc. 2005, 16:06
par Cyrano
Si c'est une image, pas de problème, mais si c'est du texte, comment feras-tu pour le mettre en arrière-plan ? :-k

Posté : 30 déc. 2005, 16:12
par albat
En le transformant en image ! :langue:

Ma solution est loin d'être parfaite, mais la demande n'est pas standard.