CSS : changer le backgound d'un autre bloc au survol et au clic

CSS : changer le backgound d'un autre bloc au survol et au clic - HTML/CSS - Programmation

Marsh Posté le 04-07-2006 à 20:18:52    

Bonjour,
 
je suis entrain de faire un site complètement en CSS (je souffre ma race).
 
En tous cas, avec du temps, ça marche partout, sur IE ou NS sur mac et sur pc !
 
Mon problème est maintenant d'afficher un background différent dans un bloc parent, quand on survol un lien et quand on a cliqué sur ce lien.
Je crois que la méthode passe par du javascript, mais je n'y connais rien... Je ne suis qu'un simple graphiste :(
Connaissez-vous un script moderne qui va bien et pas trop lourd pour faire ce genre de fonction ?
 
Merci de votre aide :hello:

Reply

Marsh Posté le 04-07-2006 à 20:18:52   

Reply

Marsh Posté le 04-07-2006 à 21:39:22    

EDIT : JE SUIS HORS SUJET [:petrus75]
 
http://bilounours.free.fr/sample/css/rollover/
 
l'exemple ne semble pas fonctionner sous IE mais il n'en est rien : j'utilise des selecteurs CSS qui ne sont pas compris par IE ... pour resoudre le probleme il suffit de rajouter des id/class dans le code HTML et de les utiliser pour s'affranchir des selecteurs que ne comprend pas IE.
 
edit : IE FF et Opera (le reste j'ai pas)


Message édité par afbilou le 04-07-2006 à 22:22:20
Reply

Marsh Posté le 05-07-2006 à 07:50:18    

merci afbilou, mais effectivement, je connaissais ce genre de méthode de rollover en css, ce qu'il me faut est différent et nécessite du javascript : au survol ou au clic sur un bloc enfant, je voudrais changer le background du bloc parent ;-)


---------------
Le luxe véritable est à la campagne ?
Reply

Marsh Posté le 05-07-2006 à 09:31:16    

Code :
  1. var target = document.getElementById('tonEnfant');
  2. target.onmouseover = function(event){
  3. this.parentNode.style.backgroundColor = '#000000';
  4. }


Si tu as besoin de le faire sur plusieurs noeuds tu fais peux faire un getElementsByTagName plutot que getElementById.
Si tu veux le faire sur le click, change onmouseouver par onclick ( mais attention au conflit si tu mets les 2 en même temps)
Plutot que de changer la couleur de fond, je changerais plutot la class css, pour eviter d'avoir des styles css en dur dans le js.

Reply

Marsh Posté le 05-07-2006 à 11:40:16    

Merci anapajari,
 
ça m'a l'air assez clair et en tous cas très simple, je vais étudier cela.
effectivement je changerai la class au lieu de la couleur.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed