Afficher un picto lors d'un hover

Résolu
lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   -  
lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   -
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

  1. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    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
    1. Pitet Messages postés 2845 Statut Membre 530
       
      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
  2. Pitet Messages postés 2845 Statut Membre 530
     
    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
  3. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    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
    1. Pitet Messages postés 2845 Statut Membre 530
       
      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
  4. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    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
    1. Pitet Messages postés 2845 Statut Membre 530
       
      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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    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
    1. Pitet Messages postés 2845 Statut Membre 530
       
      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
  7. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    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
  8. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    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
  9. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    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
  10. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    Suis-je aussi idiot ?
    Apparemment ;) tout fonctionne :)
    0
  11. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    Bonjour Pitet,
    J'ai ce message d'erreur. Peux-tu m'aider stp ?
    Merci et bon week-end,
    LM
    0
  12. lamontange Messages postés 130 Date d'inscription   Statut Membre Dernière intervention   6
     
    </a>...^^
    0