Partage
  • Partager sur Facebook
  • Partager sur Twitter

Dissimuler un texte partiellement avec un bouton

Sujet résolu
    20 septembre 2019 à 20:44:59

    Bonjour à tous,

    Je souhaiterais mettre en place un texte qui sera dissimulé partiellement en dégradé et afficher un bouton "Afficher plus" pour afficher le texte complet puis un bouton "Afficher moins" pour dissimuler à nouveau une partie du texte en dégradé.

    Pour illustrer ma demande, je vous mets en lien un produit dont la description utilise exactement l'affichage que je souhaite : 

    https://www.doyoueven.com/products/excel-leggings-sky-blue

    Dans l'attente de vos retours

    Cordialement

    • Partager sur Facebook
    • Partager sur Twitter
      21 septembre 2019 à 0:49:14

      Salut,

      tu as juste à inspecter le code du site et tu as la solution.

      • Partager sur Facebook
      • Partager sur Twitter
      Vous cherchez à faire un menu déroulant ? Visitez www.frogweb.fr ! frogweb le site qu'il vous faut !
        21 septembre 2019 à 0:58:23

        pourquoi ne pas utiliser du Js ? 

        allez cadeau: https://codepen.io/AnimalInstinct/pen/Dbgem

        • Partager sur Facebook
        • Partager sur Twitter

        Aide toi le ciel t'aidera.

          21 septembre 2019 à 2:32:29

          Bonsoir,

          J'ai oublié de préciser que je suis un vrai débutant en CSS et HTML..

          J'ai essayé de reprendre le code du site mais le résultat n'y est pas, il me semble qu'il y a aussi un script derrière ?

          Merci Baiawai, le script est bon mais comment dissimuler partiellement le début du texte en effet dégradé svp ?



          • Partager sur Facebook
          • Partager sur Twitter
            21 septembre 2019 à 9:52:53

            bonne question, avez vous fait des recherche avant ? au pire ajouter un addClass lors de la fonction js
            • Partager sur Facebook
            • Partager sur Twitter

            Aide toi le ciel t'aidera.

              21 septembre 2019 à 16:34:10

              Bonjour,

              J'ai enfin pu trouver ce que je recherchais : https://jsfiddle.net/9bp1rc0e/1/

              Toutefois, le contenu caché lorsqu'il s'affiche, se superpose à la div suivante et masque donc le contenu de cette div.

              Voici les codes :

              .content {
                background: white;
                z-index: 1;
                position:relative;
                height: auto;
                overflow: hidden;
              }
              
              .content:before, .content:after{
                -webkit-transiton: all 300ms ease;
                -moz-transiton: all 300ms ease;
                transiton: all 300ms ease;
              }
              
              .content.masked{
                height: 100px;
              }
              
              .content.open{
                padding-bottom: 30px;
              }
              
              .content.masked:before {
                content: "Read More";
                position: absolute;
                bottom:10px;
                left:0;
                width:100%;
                z-index: 3;
                text-align: center;
              }
              
              .content.masked:after {
                content: "";
                position: absolute;
                top:0;
                left:0;
                width:100%;
                height: 100%;
                z-index: 2;
                background: -webkit-linear-gradient(rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%);
                background: -moz-linear-gradient(rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%);
                background: -o-linear-gradient(rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%);
                background: linear-gradient(rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%);
              }
              
              .content.open:before {
                content: "Read less";
                position: absolute;
                bottom:10px;
                left:0;
                width:100%;
                z-index: 3;
                text-align: center;
              }
              
              .content.open:after {
                content: none;
              }

              Savez-vous quelle partie du CSS je pourrais modifier pour éviter ce conflit ?

              Merci encore



              • Partager sur Facebook
              • Partager sur Twitter
                22 septembre 2019 à 2:12:54

                .content {
                  background: white;
                  z-index: 1;
                  position:relative;
                  height: auto;
                  overflow: hidden;
                
                
                 margin:20px;
                }
                 
                • Partager sur Facebook
                • Partager sur Twitter

                Aide toi le ciel t'aidera.

                  22 septembre 2019 à 2:40:00

                  Le margin n'a aucun effet, la div se superpose toujours sur la div suivante... :(
                  • Partager sur Facebook
                  • Partager sur Twitter
                    22 septembre 2019 à 10:25:50

                    Surement à cause de de la position:absolute;

                    ici tu indique un left:0; test avec un margin-left:0; deja 

                    • Partager sur Facebook
                    • Partager sur Twitter

                    Aide toi le ciel t'aidera.

                      22 septembre 2019 à 11:25:02

                      Bonjour,

                      J'ai testé avec le margin-left:0 qui n'a pas fonctionné.

                      Mais après 3 jours de galère, j'ai enfin trouvé le problème !

                      La div juste avant celle ci avait un height: 150px; en l'enlevant, le problème n'apparaissait plus :) 

                      Merci Baiawai de ton aide ;)

                      Bon dimanche !

                      • Partager sur Facebook
                      • Partager sur Twitter

                      Dissimuler un texte partiellement avec un bouton

                      × 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