hlcginfo Posté 21 Avril 2008 Posté 21 Avril 2008 Bonjour, je souhaite modifier le code suivant pour que le texte qui se situe dans la cellule change de couleur en même temps que la cellule lors d'un rollover sur celle-ci. Mon code actuel : (la couleur ce modifie dans la cellule) Code : <td width="170" align="left" valign="top" bgcolor="#EAEAEA" onMouseOver="this.style.backgroundColor='#E85412'; this.style.cursor='hand';" onMouseOut="this.style.backgroundColor='#EAEAEA'"> <table width="160" border="0" cellpadding="0" cellspacing="5"> <tr> <td bgcolor="#FFFFFF"><a href="#" target="_blank"><img src="capture/monimage.jpg" width="160" height="100" border="0"></a></td> </tr> <tr> <td><span class="Style1">blablabla</span><br> <span class="Style3">blablabla</span> </td> </tr> </table></td> J'ai trouvé un code similaire à ce que je veut faire; mais il ne s'adapte pas à mon cas. le code trouvé : (la couleur ce modifie sur le texte et dans la cellule) Code : <td bgcolor="#0066FF";onMouseOver = "this.style.color = 'red';this.style.background='black'"onMouseOut = "this.style.color = 'black';this.style.background='red'">blablabla</td> Là le texte ce situe dans la balise <td>, mais lorsque l'on imbrique un tableau, l'effet ne marche plus. Je souhaite garder la même structure de tableau présent dans mon code avec l'effet de changement sur le texte en même temps que le fond de cellule. Je me demande si c'est possible de remplacer THIS par un une variable qui cible les balises <span>. Est-ce possible ? Merci d'avance pour vos réponses
iNCiTE Web Posté 21 Avril 2008 Posté 21 Avril 2008 Oui, Il faut que tu identifies chaque zone) avec un id <span id="nom_zone">blablabla</span> Ensuite : onMouseOver="document.getElementById('nom_zone').style.backgroundColor='#E85412'; this.style.cursor='hand';" onMouseOut="document.getElementById('nom_zone').style.backgroundColor='#EAEAEA'" Chaque id de span doit bien sûr être unique dans toute la page... si les données proviennent d'une base c'est facile à générer...
Ifmy Posté 23 Avril 2008 Posté 23 Avril 2008 Si je ne m'abuse, il n'y a pas besoin d'utiliser JavaScript pour ça. une simple règle css :hover suffit
captain_torche Posté 23 Avril 2008 Posté 23 Avril 2008 Internet explorer supporte mal les :hover sur d'autres éléments que les liens. Si tu veux utiliser le CSS et avoir un rendu uniforme quel que soit le navigateur, il faudra utiliser un hack pour ie, comme celui-ci : whatever:hover.
Dadou Posté 23 Avril 2008 Posté 23 Avril 2008 Non malheureusement pas, IE 6 et inférieurs ne gère la pseudo classe over que sur la balise a. Il existe bien un "hack" pour le contrer, mais cela revient à faire du javascript Edit : Captain à été plus rapide
hlcginfo Posté 29 Avril 2008 Auteur Posté 29 Avril 2008 Désolé pour le retard de réponse de ma part... je vous remercie pour vos réponses. Je m'empresse d'essayer ce truc Merci
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant