Afficher un picto lors d'un hover

Résolu/Fermé
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 - 4 mai 2022 à 07:19
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 - 15 mai 2022 à 10:26
Bonjour,
J'aimerais afficher un lien (picto) lors d'un hover. Seulement voilà... ce que j'ai trouvé sur le net ne fonctionne pas.
Si une personne pouvais m'aider ;)`Mes CSS :
.dmitri {
position: relative;
width: 50%;
height: auto;
float: right;
margin-left: 20px;
margin-top: 40px;
}
.dmitri:hover {
opacity: 0.7;
background-image: url('/imgs/link_icon_145967.png');
background-repeat: no-repeat;
display: block;

}

et mon simple HTML :
        <a href="#oModal"><img class="dmitri" src="./imgs/dmitri.jpg" alt="mannequin"></a>

Merci et bonne journée !
Configuration: Macintosh / Chrome 101.0.4951.41

11 réponses

lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
4 mai 2022 à 20:03
Par contre, je ne trouve pas comment changer l'opacité de la photo dmitri, celle qui déclenche le picto au :hover :/
.bloc-dmitri {
  position: relative;
  width: 50%;
  float: right;
  margin-left: 20px;
  margin-top: 40px;
}

.dmitri {
  width: 100%;
  height: auto;
}

.dmitri-hover {
  position: absolute;
  padding-top: 100%%;
  width: 50%;
  height: 50%x;
  left: 30%;
  opacity: 0;
  transition: opacity 0.4s ease-in;
}

.bloc-dmitri:hover .dmitri-hover {
  opacity: 0.2;
}
1
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
5 mai 2022 à 12:21
Si tu modifier l'opacité de l'élément .dmitri lors du survol du bloc, tu peux ajouter la règle suivante :
.bloc-dmitri:hover .dmitri {
  opacity: 0.5;
}
1
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
4 mai 2022 à 13:41
Bonjour,

Tu peux essayer comme ceci :
<a href="#oModal" class="modal">
  <img class="dmitri" src="https://picsum.photos/id/1/200" alt="mannequin">
  <img class="image-hover" src="https://picsum.photos/id/10/50" alt="picto">
</a>


.modal {
  position: relative;
  display: inline-block;
}

.image-hover {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.modal:hover .image-hover {
  opacity: 0.7;
}
0
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
4 mai 2022 à 14:18
Bonjour Pitet,
Il doit y avoir un problème dont je n'ai trouvé la cause au niveau du HTML. L'image (dmitri) n'apparaît plus :/
Merci pour ton aide (encore une fois ;)
LM
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
4 mai 2022 à 15:22
Encore une fois difficile de voir le problème sans voir ton nouveau code ;)

N'hésites pas à utiliser l'inspecteur d'élément dans les outils de développement de ton navigateur pour voir quel est le code css appliqué sur chaque balise.
0
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
4 mai 2022 à 15:45
L'inspecteur et moi :(
Alors le code :)

.prez{
display: block;
text-align: center;
margin-bottom : 20px;
color: black;
border-radius: 0px;
}
.oModal {
position: fixed;
z-index: 99999;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: rgba(0, 0, 0, 0.8);
opacity:0;
-webkit-transition: opacity 400ms ease-in;
-moz-transition: opacity 400ms ease-in;
transition: opacity 400ms ease-in;
pointer-events: none;
overflow-y: auto;
}


.oModal:target {
opacity:1;
pointer-events: auto;
}

.oModal:target > div {
margin:5% auto;
transition: all 0.4s ease-in-out;
-moz-transition: all 0.4s ease-in-out;
-webkit-transition: all 0.4s ease-in-out;
}

.oModal > div {
max-width: 60%;
position: relative;
margin: 1% auto;
padding: 8px 8px 8px 8px;
border-radius: 5px;
background: white;
transition: all 0.4s ease-in-out;
-moz-transition: all 0.4s ease-in-out;
-webkit-transition: all 0.4s ease-in-out;
overflow-y: auto;
}

.oModal > div h2 {
margin:0;
}

Le HTML :
        <div class="photo_cv">
<img src="./imgs/dmitri.jpg" alt="Ma photo de profil">
</div>

MERCIIIIIIIIII !
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
4 mai 2022 à 16:02
Ca vaut le coup d'apprendre à utiliser l'inspecteur, c'est très pratique pour le développement en html et css.

Ton code semble très différent du code de ton premier message et de la solution proposée :
- l'image du picto n'existe plus dans ton code
- le css concerne les classes prez et oModal mais ces classes n'existes pas dans ton code html
- tu n'utilises plus la pseudo-classe :hover

Un autre exemple : https://jsfiddle.net/x0pezc9r/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
4 mai 2022 à 16:35
Ca vaut le coup d'apprendre à utiliser l'inspecteur, c'est très pratique pour le développement en html et css.
Je sais, je vais m'y mettre ;)

Ton code semble très différent du code de ton premier message et de la solution proposée.
Il y avait les CSS des images, puis de la modale.
Mon ctuel (paske j'y arrive pas :/
HTML :
          <img src='/imgs/dmitri.jpg' alt="Ma photo de profil" class="dmitri">
           <img class="dmitri-hover" src='/imgs/link_icon_145967.png' alt="picto"></a>

et les CSS :
.dmitri {
position: relative;
width: 50%;
height: auto;
float: right;
margin-left: 20px;
margin-top: 40px;

}
.dmitri-hover {
position: absolute;
top: 0;
left: 0;
opacity: 0;
transition: opacity 400ms ease-in;
}

photo_cv, c'est autre chose, désolé. L'image clickable (celle dont je désire un picto lors du :hover) c'est dmitri
Encore merci et désolé.
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
Modifié le 4 mai 2022 à 17:38
Ajoute une classe css sur la balise <a> qui contient les deux images et applique les propriétés css pour positionner ton bloc (width, float, margin, etc.) sur cette classe. Applique également un position: relative, ceci permet de placer l'image en position: absolute au dessus de la première image.

Pour la classe .dmitri, un simple width ou min-width: 100% devrait suffire.

Enfin utilise la pseudo classe :hover pour changer l'opacité de la classe .dmitri-hover lorsque la souris passe sur la balise <a>.

<a href="#oModal" class="bloc-dmitri">
  <img class="dmitri" src="/imgs/dmitri.jpg" alt="mannequin">
  <img class="dmitri-hover" src="/imgs/link_icon_145967.png" alt="picto">
</a>


.bloc-dmitri {
  position: relative;
  width: 50%;
  float: right;
  margin-left: 20px;
  margin-top: 40px;
}

.dmitri {
  min-width: 100%;
  height: auto;
}

.dmitri-hover {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.4s ease-in;
}

.bloc-dmitri:hover .dmitri-hover {
  opacity: 1;
}
1
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
4 mai 2022 à 17:55
Merci pour toutes ces explications, ça m'aide à comprendre.
Par contre, je n'ai pas d'image. Uniquement les intitulés. Do
nc le hover fonctionne :)
Merci !
0
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
4 mai 2022 à 19:02
Merci beaucoup Pitet !!!! Je me posais la question d'où venait le problème...
Pas vu :/( J'ai virer les slash des chemins et ÇA ROULE !!!!!!! :))))))
Encore MERCI !!!!
0
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
4 mai 2022 à 19:11
Par contre, le B.A.BA... :/
Comment je fais pour que le picto reste centré sur l'image, et pour réduire ce dernier ?
Un backrgound-size ne fonctionne pas. :(
Désolé.
0
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
4 mai 2022 à 19:52
Suis-je aussi idiot ?
Apparemment ;) tout fonctionne :)
0
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
14 mai 2022 à 14:21
Bonjour Pitet,
J'ai ce message d'erreur. Peux-tu m'aider stp ?
Merci et bon week-end,
LM
0
lamontange Messages postés 133 Date d'inscription jeudi 3 décembre 2020 Statut Membre Dernière intervention 29 septembre 2023 6
15 mai 2022 à 10:26
</a>...^^
0