IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Changer class d'un span lors d'un passage de souris sur lien a


Sujet :

CSS

  1. #1
    Membre émérite Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Points : 2 589
    Points
    2 589
    Par défaut Changer class d'un span lors d'un passage de souris sur lien a
    Bonjour,

    Lors d'un petit test, j'ai un lien construit de cette façon :

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="#" alt="">Test1<span id="titre_spanHeader">Test2</span> Test3</a>

    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    a { color:black; text-decoration:none; }
    a:hover { color:#a09797; }
    span#titre_spanHeader{ color:#a09797; }
    span#titre_spanHeader:hover { color:black;}

    Lorsque je passe la souris sur Test2, Test1 et Test3 change de couleur (effet donné au a:hover), mais lorsque je passe la souris sur Test1 ou Test3, Test2 ne change pas.

    Question1 :
    Comment faire pour changer le style du span lors du hover sur le a ?
    Question2 : J'ai appliqué le style sur la balise a (donc balise de base qui s'appliquera à tous les liens a de la page), comment ne le faire que pour 1 a spécifique, contenant une class spécifique ?

    Merci d'avance a ceux qui répondront

  2. #2
    Membre éclairé Avatar de pop_up
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 877
    Points : 786
    Points
    786
    Par défaut
    Le truc c'est que le selecteur :hover ne fonctionne que sur la balise a pour IE< IE7 je crois ( a verifier)

    Tu as testé sous quel navigateur par hasard ? IE ?

    Sous firefox 3 ton code fonctionne.


  3. #3
    Membre éprouvé Avatar de FraK
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2005
    Messages
    828
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 828
    Points : 985
    Points
    985
    Par défaut
    Perso je précise toujours des class sur les a quand je veux quelque chose de bien spécifique, ça alourdit le css c'est sûr, mais ça passe partout. Regarde dans les les Cours et tutoriels pour apprendre CSS : https://css.developpez.com/cours/

  4. #4
    Membre émérite Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Points : 2 589
    Points
    2 589
    Par défaut
    Citation Envoyé par pop_up Voir le message
    Le truc c'est que le selecteur :hover ne fonctionne que sur la balise a pour IE< IE7 je crois ( a verifier)

    Tu as testé sous quel navigateur par hasard ? IE ?

    Sous firefox 3 ton code fonctionne.

    Testé sous FF2 & IE7 seulement et l'effet espéré ne fonctionne pas.
    Mais donc, comment appliqué un style sur un a prédéfini ?

  5. #5
    Membre émérite Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Points : 2 589
    Points
    2 589
    Par défaut
    Citation Envoyé par FraK Voir le message
    Perso je précise toujours des class sur les a quand je veux quelque chose de bien spécifique, ça alourdit le css c'est sûr, mais ça passe partout.
    Ok, donc dans l'idée :

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a class="titre_header" href="#" alt="">Test1<span id="titre_spanHeader">Test2</span> Test3</a>

    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    .titre_header { color:black; text-decoration:none; }
    .titre_header:hover { color:#a09797; }
    span#titre_spanHeader { color:#a09797; }
    span#titre_spanHeader:hover { color:black; }

    Donc Question 2 = Ok, mais question 1 ?
    Dois-je regarder du côté du javascript ?

    Le but serai de changer la class du span sur le a:hover (maintenant titre_header:hover)...

  6. #6
    Membre éprouvé Avatar de FraK
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2005
    Messages
    828
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 828
    Points : 985
    Points
    985
    Par défaut
    A mon avis oui je pense.
    Tu vas devoir passer par des conditions if, else if ...
    Mais sans certitude, jamais testé

  7. #7
    Membre éclairé Avatar de pop_up
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 877
    Points : 786
    Points
    786
    Par défaut
    mais lorsque je passe la souris sur Test1 ou Test3, Test2 ne change pas.
    Je comprend pas.

    Si tu passe ta souris sur test1 ou test3, tu valide la propriété suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    a:hover { color:#a09797; }
    et tes liens restent bien gris

    et aussi la propriété utilisée pour ton id reste la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    span#titre_spanHeader{ color:#a09797; }
    Donc pour moi c'est ok non ?

    Si tu veux qu'en passant sur test1 ou test3, test2 soit noir alors il faut mettre ceci non ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    a { color:black; text-decoration:none; }
    a:hover { color:#a09797; }
    span#titre_spanHeader{ color:#a09797; }
    a:hover span#titre_spanHeader{ color:black;}
    span#titre_spanHeader:hover { color:black;}

  8. #8
    Membre émérite Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Points : 2 589
    Points
    2 589
    Par défaut
    J'ai trouvé
    En rajoutant un div qui englobe le tout et lui appliquant un ID.
    Du coup, je peux jouer sur l'id qui englobe le a et le span...

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <div id="header"><a href="#" alt="">Test<span>Test2</span>Test3</a></div>

    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #header a, #header a:hover span { color:black; text-decoration:none; }
    #header a:hover, #header a span { color:#a09797; }

    Merci quand même pour vos réponses...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PrestaShop] Afficher un module lors du survol de la souris sur un onglet du menu
    Par DevKast dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 23/09/2014, 21h25
  2. Charger du contenus html lors d'un passage de souris
    Par bulle-dog dans le forum Webdesign & Ergonomie
    Réponses: 2
    Dernier message: 10/04/2013, 18h09
  3. Affichage d'un encadré lors du page de la souris sur un lien
    Par Mat67 dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 01/08/2008, 14h28
  4. [IMAGE] changement d'image lors d'un passage de souris
    Par gailup dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 02/06/2006, 10h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo