Partage
  • Partager sur Facebook
  • Partager sur Twitter

Effet lien CSS

Effet d'apparition et décalage sur un lien en CSS

Sujet résolu
    16 janvier 2021 à 18:48:59

    Bonjour !

    J'aimerais réaliser un effet CSS en hover sur des liens mais j'ai beau chercher je n'y arrive pas.

    J'ai tenté de créer une div pour le trait et une div pour le texte mais comment et où indiquer le hover?

    Si quelqu'un pouvait m'éclairer ce serait top !

    Voici ce à quoi j'aimerais arriver :

    Merci !

    -
    Edité par henjuu 16 janvier 2021 à 18:49:20

    • Partager sur Facebook
    • Partager sur Twitter
      16 janvier 2021 à 19:12:48

      Bonjour,

      Il faut faire:

      .LeNomDeTaDiv:hover {
      background-color:blue;
      }

      Et tu auras au survol de la souris un fond bleu. Mais avant il faut indiqué comment doit être ta div sans hover ce qui donne

      .TaDiv{}
      
      .TaDiv:hover{
      Background-color:blue
      }



      -
      Edité par Bidouillman 16 janvier 2021 à 19:18:56

      • Partager sur Facebook
      • Partager sur Twitter

      Le code est notre langue, la programmation notre passion, la technologie notre avenir!

        17 janvier 2021 à 8:23:26

        Bonjour,

        il faut utiliser le pseudo-element before, combiné avec hover, beaucoup d'exemples en cherchant "css before hover" dans ton moteur de recherche préféré

        • Partager sur Facebook
        • Partager sur Twitter
          17 janvier 2021 à 10:53:59

          Bonjour,

          Merci beaucoup, je ne connaissais pas du tout l'existence des ::before et ::after :lol:

          J'ai réussi à intégrer une ligne sur mes liens, mais problème, la ligne se positionne SUR mes liens et non avant. Je n'arrive pas à avoir l'effet de décalage que je souhaite. Ca donne ça :

          Voici mon code :

          a{
              text-align: center;
              position: relative;
          }
          
          a:hover::before {
              content: "";
              left: 0;
              right: 0;
              height: 2px;
              width: 30px;
              background: #000000;
              position: absolute;
              top: calc(50% - 1px);
          }



          • Partager sur Facebook
          • Partager sur Twitter
            17 janvier 2021 à 11:17:48

            un padding-left de 40px sur a:hover va déplacer le texte vers la droite, comme sur ton schéma,
            j'ajouterais une transition:0.5s sur a, et on a un bel effet

            a{
               ...
               transition:0.5s;
            }
            a:hover {
               ...
               padding-left:40px;
            }
            



            -
            Edité par ChrisLebure 17 janvier 2021 à 11:18:14

            • Partager sur Facebook
            • Partager sur Twitter
              17 janvier 2021 à 12:39:36

              Ah mais oui aha pourquoi je n'y ai pas pensé >_<

              Merci beaucoup de votre aide, j'aurai appris les ::before et ::after !

              Sujet résolu :)

              • Partager sur Facebook
              • Partager sur Twitter

              Effet lien CSS

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown