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 :

Modifier un élément parent au survol


Sujet :

Survol d'un élément en CSS (:hover)

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 216
    Par défaut Modifier un élément parent au survol
    Bonjour à tous,

    J'ai un petit souci en CSS. Voici ma mise en page (simplifiée) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <div class="article_accueil">
    	<div class="image_accueil">	
    		<a href="..."><img src="..." /></a>
    	</div>		
    	<a class="titres_accueil" href="...">lien</a>
    	<div class="bas_titres_accueil"></div>
    </div>
    Sur la capture ci-dessous, l'image (chat) est donc cliquable, de même que l'image en-dessous ("article image petite").

    Nom : chat1.png
Affichages : 445
Taille : 76,7 Ko

    L'image est grisée par un filtre en CSS.

    Au survol de l'image : l'image perd son filtre, et j'agis également sur le lien en-dessous dont le background change de couleur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    .image_accueil:hover {
    	filter: grayscale(0);
            -webkit-filter: grayscale(0);
            -moz-filter: grayscale(0);
            -o-filter: grayscale(0);
            -ms-filter: grayscale(0);
    }
     
    .image_accueil:hover ~ a.titres_accueil {
    	background-color: #fead2d;
    }
    En revanche, l'inverse ne fonctionne pas : en survolant "article image petite", le background change de couleur, mais l'image reste grisée, malgré le code CSS suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    a.titres_accueil:hover ~ .image_accueil {
    	filter: grayscale(0);
            -webkit-filter: grayscale(0);
            -moz-filter: grayscale(0);
            -o-filter: grayscale(0);
            -ms-filter: grayscale(0);
    }
    Je ne sais pas d'où vient le problème (peut-être l'ordre des éléments dans le HTML ?)...

    Quelqu'un aurait-il une solution ?

    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Il suffit d'appliquer le :hover sur le parent commun.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .article_accueil:hover ....

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 216
    Par défaut
    Bonjour,

    Merci de la réponse, mais je ne comprends pas bien.

    J'ai testé ceci (et qui ne fonctionne pas, mais je ne sais pas si c'était l'idée ?)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    a.article_accueil:hover ~ .image_accueil {
    	filter: grayscale(0);
            -webkit-filter: grayscale(0);
            -moz-filter: grayscale(0);
            -o-filter: grayscale(0);
            -ms-filter: grayscale(0);
    }

  4. #4
    Invité
    Invité(e)
    Par défaut
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    .article_accueil:hover .image_accueil {
    	filter: grayscale(0);
            -webkit-filter: grayscale(0);
            -moz-filter: grayscale(0);
            -o-filter: grayscale(0);
            -ms-filter: grayscale(0);
    }
     
    .article_accueil:hover a.titres_accueil {
    	background-color: #fead2d;
    }

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 216
    Par défaut
    En effet je m'embêtais pour rien... Merci !!!

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

Discussions similaires

  1. élément parent mais pas element survolé
    Par leTiDevDu54 dans le forum jQuery
    Réponses: 6
    Dernier message: 17/10/2011, 08h35
  2. [CSS] Elements flottants et taille de l'élément parent
    Par Blustuff dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 28/07/2006, 16h31
  3. [XML] exclure des éléments d'un éléments parent
    Par Djakisback dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 31/03/2006, 10h45
  4. Modifier titre dcument parent d'une iframe
    Par Trunks dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 08/01/2006, 16h13
  5. Modifier un element parent dans un fct javascript
    Par bslota dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/11/2005, 19h02

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