AccueilFAQRechercherMembresGroupesS'enregistrerConnexion

Forum de graphisme, codage et game design proposant des tutoriels, astuces, libres services et commandes dans les domaines de l'infographie amateur, de l'intégration web (HTML et CSS essentiellement) ainsi que dans la conception de RPG sur forum.


    Bloc flottant ouvrant "au survol" (CSS)

    Partagez
    avatar
    Taktiik
    MasculinAge : 22Messages : 2291

    le Dim 20 Nov 2011 - 1:37

    Rappel du premier message :



    Un Déroulant Fluide Dernière mise à jour : 29 Avril 2013
    Aperçu
    Préparation
    Détails

    W W W
    Il n'y a pas de préparations particulière à part avoir les yeux grands ouverts et le cerveau prêt à réfléchir Wink !

    Vous pouvez maintenant poursuivre et débuter le tutoriel. Pour toutes questions, n'hésitez pas à m'envoyer un email : taktiik69@gmail.com si j'oublie de répondre, et j'insiste à nouveau :

    Sparrow Style a dit : Quoi qu'il en soit, si vous utilisez ce tutoriel pour personnaliser l'apparence de votre forum, je vous demande de mettre un crédit à Never-Utopia sur votre accueil, de manière lisible cela va de soi, en guise de remerciement pour l'aide que nous vous avons apportée.


    Niveau : Facile
    Fait : 20/11/2011
    Type : Tutoriel


    Voici une astuce simple et pourtant qui peut changer la donne dans l'esthétique de votre forum. Ces déroulants fluides vont vous permettre de cacher des liens en trop ou des informations secondaires ! Nous aborderons, car il est nécessaire, les transitions CSS3 dans ce petit tutoriel.

    Le contenu n'est pas sous balide hide (explications), mais n'hésitez pas à remercier son auteur.


    Navigation



    Partie HTML

    Tout d'abord, pour pouvoir créer cette boite déroulante, nous allons devoir l'introduire à l'aide de balises. Et pas n'importe laquelle, nous allons donc utiliser une div pour faire cela.
    /!\ Attention, ceci peut aussi se faire sur un Tableau ou d'autres élémentsde type "Block" /!\

    On va lui affiler une class qui sera reliée au CSS et que l'on pourra modifier. Appellons cette classe :"Deroulant" !

    Si vous avez bien suivis, on a ceci :
    Code:
    <div class="Deroulant"></div>

    En ajoutant du contenu, on peut arriver à :
    Code:
    <div class="Deroulant"><h3>Titre de la boite</h3>
    Le titre va nous permettre de passer la souris pour affichaer ce que l'on veut cacher<br />
    Car nous ... On est des cachotiers °°</div>

    Pour ce qui est du HTML, on a terminé. La partie du CSS est cependant un peu plus consistante.


    Déroulant Horizontal

    Rien de bien difficile en soit !
    Tout d'abord, on va créer notre class dans le CSS, et tout de suite, on va lui affiler une largeur avec width. Pourquoi?
    Car lorsque vous passerez votre souris dans cette zone, la boite dévoilera son contenu.

    Prenons donc une largeur de 30px :
    Code:
    .Deroulant
    {
      width: 30px;
    }

    Pourtant, la boite a quand même besoin d'une hauteur pour exister. Ainsi, on va lui donner une hauteur :
    Code:
    .Deroulant
    {
      width: 30px;
      height: 150px;
    }

    Maintenant, vous pouvez lui ajouter tout le style que vous voulez, pour ma part, je lui ajoute une couleur de fond (background-color), une bordure (border), un alignement du texte au centre, une barre de défilemnet cachée (overflow: hidden) et des arrondis (border-radius) :
    Code:
    .Deroulant
    {
      overflow: hidden; /* Cache la barre de défilement, pour l'afficher, mettre en valeur : auto */
      background-color: #dfdfdf; /* Fond Grisé */
      border: 2px solid #cccccc; /* Bordure grisée de 2px sur chaque cotés */
      width: 30px;
      height: 150px;
      text-align: center; /* Alignement du texte au centre */
      border-radius: 10px; /*Arrondi les coins*/
    }


    Maintenant, comme l'on veut que le contenu s'affiche au passage de la souris on va créer une seconde balise pour .Deroulant qui aura le suffixe :hover
    Hover ? Ca veut dire planer, voltiger, survoler. Simple à retenir non ^^ ?
    /!\ Attention, les valeurs que vous avez déjà mises dans .Deroulant sont automatiquement données au suffixe :hover, vous n'êtes donc pas obligés de les mettre dans .deroulant:hover /!\



    Donnons alors à .Deroulant:hover une largeur de 300px :
    Code:
    .Deroulant:hover
    {
      width: 300px;
    }

    On va ajouter une propriété de CSS3 qui va venir appliquer un effet de transition et créer cette sensation de déroulement fluide !
    /!\ Attention, si vous mettez ces propriétés dans .Deroulant, vous devez les mettre dans .Deroulant:hover pour que le déroulement soit fluide au moment du passage et au moment où la souris est retiée ! Voilà une exception /!\

    Code:
    .Deroulant
    {
      overflow: hidden; /* Cache la barre de défilement, pour l'afficher, mettre en valeur : auto */
      background-color: #dfdfdf; /* Fond Grisé */
      border: 2px solid #cccccc; /* Bordure grisée de 2px sur chaque cotés */
      width: 30px;
      height: 150px;
      text-align: center; /* Alignement du texte au centre */
      border-radius: 10px; /*Arrondi les coins*/
      -webkit-transition: 1s all; /* Transition et ses compatibilités */
      transition: 1s all;
    }

    Validez le CSS et allez admirer le résultat o/ !


    Bon maintenant, si vous voulez faire comme sur l'exemple, vous pouvez placer la boite n'importe où sur votre écran. Ainsi, donnez une position fixée à votre boite (position: fixed;) et donnez lui son décalement par rapport au haut de l'écran et la gauche.
    Code:
    .Deroulant
    {
      position: fixed;
      top: 150px;
      left: 0px;
      overflow: hidden; /* Cache la barre de défilement, pour l'afficher, mettre en valeur : auto */
      background-color: #dfdfdf; /* Fond Grisé */
      border: 2px solid #cccccc; /* Bordure grisée de 2px sur chaque cotés */
      width: 30px;
      height: 150px;
      text-align: center; /* Alignement du texte au centre */
      border-radius: 10px; /*Arrondi les coins*/
      -webkit-transition: 1s all; /* Transition et ses compatibilités */
      transition: 1s all;
    }


    Déroulant Vertical

    Tout d'abord, on va créer notre class dans le CSS, et tout de suite, on va lui affiler une hauteur avec height. Pourquoi?
    Car lorsque vous passerez votre souris dans cette zone, la boite dévoilera son contenu.

    Prenons donc une largeur de 30px :
    Code:
    .Deroulant
    {
      height: 30px;
    }

    Pourtant, la boite a quand même besoin d'une hauteur pour exister. Ainsi, on va lui donner une hauteur :
    Code:
    .Deroulant
    {
      height: 30px;
      width: 150px;
    }

    Maintenant, vous pouvez lui ajouter tout le style que vous voulez, pour ma part, je lui ajoute une couleur de fond (background-color), une bordure (border), un alignement du texte au centre, une barre de défilemnet cachée (overflow: hidden) et des arrondis (border-radius) :
    Code:
    .Deroulant
    {
      overflow: hidden; /* Cache la barre de défilement, pour l'afficher, mettre en valeur : auto */
      background-color: #dfdfdf; /* Fond Grisé */
      border: 2px solid #cccccc; /* Bordure grisée de 2px sur chaque cotés */
      height: 30px;
      width: 150px;
      text-align: center; /* Alignement du texte au centre */
      border-radius: 10px; /*Arrondi les coins*/
    }

    Maintenant, comme l'on veut que le contenu s'affiche au passage de la souris on va créer une seconde balise pour .Deroulant qui aura le suffixe :hover
    Hover ? Ca veut dire planer, voltiger, survoler. Simple à retenir non ^^ ?
    /!\ Attention, les valeurs que vous avez déjà mises dans .Deroulant sont automatiquement données au suffixe :hover, vous n'êtes donc pas obligés de les mettre dans .deroulant:hover /!\


    Donnons alors à .Deroulant:hover une hauteur de 300px :
    Code:
    .Deroulant:hover
    {
      height: 150px;
    }

    On va ajouter une propriété de CSS3 qui va venir appliquer un effet de transition et créer cette sensation de déroulement fluide !
    /!\ Attention, si vous mettez ces propriétés dans .Deroulant, vous devez les mettre dans .Deroulant:hover pour que le déroulement soit fluide au moment du passage et au moment où la souris est retiée ! Voilà une exception /!\

    Code:
    .Deroulant
    {
      overflow: hidden; /* Cache la barre de défilement, pour l'afficher, mettre en valeur : auto */
      background-color: #dfdfdf; /* Fond Grisé */
      border: 2px solid #cccccc; /* Bordure grisée de 2px sur chaque cotés */
      height: 30px;
      width: 150px;
      text-align: center; /* Alignement du texte au centre */
      border-radius: 10px; /*Arrondi les coins*/
      -webkit-transition: 1s all; /* Transition et ses compatibilités */
      transition: 1s all;

    Validez le CSS et allez admirer le résultat o/ !


    Bon maintenant, si vous voulez faire comme sur l'exemple, vous pouvez placer la boite n'importe où sur votre écran. Ainsi, donnez une position fixée à votre boite (position: fixed;) et donnez lui son décalement par rapport au haut de l'écran et la gauche.
    Code:
    .Deroulant
    {
      position: fixed;
      top: 0px;
      left: 500px;
      overflow: hidden; /* Cache la barre de défilement, pour l'afficher, mettre en valeur : auto */
      background-color: #dfdfdf; /* Fond Grisé */
      border: 2px solid #cccccc; /* Bordure grisée de 2px sur chaque cotés */
      height: 30px;
      width: 150px;
      text-align: center; /* Alignement du texte au centre */
      border-radius: 10px; /*Arrondi les coins*/
      -webkit-transition: 1s all; /*Transition et ses comptabilités*/
      transition: 1s all;

    Navigation



    Voila ! Very Happy
    J'espère que ce tutoriel vous aidera à comprendre comment l'on peut confectionner un petit déroulant.
    N'hésitez pas à me contacter pour de l'aide,
    Taktiik.


    Dernière édition par Taktiik le Lun 29 Avr 2013 - 16:44, édité 11 fois
    avatar
    Faxaw
    MasculinAge : 19Messages : 39

    le Jeu 8 Déc 2011 - 16:44

    Je suis trop curieux éwè
    avatar
    Kelogo
    MasculinAge : 18Messages : 16

    le Jeu 8 Déc 2011 - 20:24

    Merci ...



    avatar
    tyty48
    MasculinAge : 19Messages : 7

    le Jeu 8 Déc 2011 - 21:11

    Merci pour le tutoriel, il a l'air génial ^^
    Mais pour la partie HTML, où devons nous la mettre ?
    Dans une page HTML créée ?
    avatar
    Ge-gege08
    FémininAge : 27Messages : 43

    le Ven 9 Déc 2011 - 1:48

    Merci! Hâte de voir comment faire!
    avatar
    Taktiik
    MasculinAge : 22Messages : 2291

    le Ven 9 Déc 2011 - 15:08

    tyty48 a écrit:Merci pour le tutoriel, il a l'air génial ^^
    Mais pour la partie HTML, où devons nous la mettre ?
    Dans une page HTML créée ?

    Tu peux le mettre n'importe où =) !

    Dans un message, dans une page HTML ... Peu importe tant que le CSS est présent Wink

    Cordialement~~
    Taktiik.

    avatar
    Faxaw
    MasculinAge : 19Messages : 39

    le Ven 9 Déc 2011 - 16:11

    Merci pour le tutoriel
    avatar
    kimel'
    FémininAge : 21Messages : 13

    le Ven 9 Déc 2011 - 16:25

    Je cherchais exactement cet effet ! *-*
    avatar
    Jabberwock Elyra
    MasculinAge : 23Messages : 44

    le Dim 11 Déc 2011 - 7:23

    Ha cool miiciii^^
    avatar
    StrawBerru
    FémininAge : 25Messages : 15

    le Dim 11 Déc 2011 - 8:29

    Merci :)
    Fée clow'chette
    MasculinAge : 52Messages : 8

    le Mar 13 Déc 2011 - 12:26

    Merci :)

    Edit : Par contre serait-il possible qu'il s'ouvre vers la gauche et non vers la droite?
    avatar
    Taktiik
    MasculinAge : 22Messages : 2291

    le Mar 13 Déc 2011 - 17:35

    Yop !

    Oui, c'est totalement possible Wink

    Il suffit de mettre width au lieu de height dans .deroulant et .deroulant:hover.

    Cordialement~~
    Taktiik.

    Fée clow'chette
    MasculinAge : 52Messages : 8

    le Mer 14 Déc 2011 - 9:40

    Ah merci beaucoup :)
    avatar
    .havana
    FémininAge : 20Messages : 10

    le Mer 14 Déc 2011 - 14:08

    Merci d'avance pour le tuto.
    L'effet a l'air fun Very Happy
    avatar
    Taktiik
    MasculinAge : 22Messages : 2291

    le Mer 14 Déc 2011 - 14:37

    Yop !

    MàJ faîte sur la barre de défilement.
    Je l'ai retiré mais il faudra bien ajuster la valeur de height dans .deroulant:hover Wink

    Cordialement~~
    Taktiik.

    avatar
    TUC
    FémininAge : 29Messages : 103

    le Jeu 15 Déc 2011 - 18:57

    merci (:



    avatar
    ´Saiketsu «
    MasculinAge : 20Messages : 80

    le Lun 19 Déc 2011 - 22:59

    Je veux voir *-*
    avatar
    Shuu-Shuu
    FémininAge : 21Messages : 196

    le Mar 20 Déc 2011 - 10:19

    thank's you =D
    avatar
    Piriel'Pistache
    FémininAge : 17Messages : 6

    le Mar 20 Déc 2011 - 13:12

    Merci !
    avatar
    Invité

    le Mar 20 Déc 2011 - 13:49

    Ho quelle bonne idée, merci beaucoup pour ce tuto *w*
    J'ai toujours voulu savoir comment faire ça !
    avatar
    Romane
    FémininAge : 22Messages : 17

    le Mar 20 Déc 2011 - 21:32

    Je cherchais ce code depuis un moment :) Merci
    avatar
    Cissy
    FémininAge : 25Messages : 63

    le Mer 21 Déc 2011 - 9:12

    Merciii (l)
    avatar
    Marie
    FémininAge : 28Messages : 2206

    le Mer 21 Déc 2011 - 22:49

    Merci TicTac! xxxx



    /

    Kit fait par Arpège. Merci! :love:
    avatar
    sid
    MasculinAge : 34Messages : 9

    le Ven 23 Déc 2011 - 11:45

    Ca a l'air excellent ce petit truc
    avatar
    Chou ♥
    FémininAge : 20Messages : 19

    le Dim 25 Déc 2011 - 18:09

    Merci :)
    avatar
    Ruby*
    FémininAge : 25Messages : 24

    le Mer 28 Déc 2011 - 1:10

    Merci pour ce tuto (:
    Contenu sponsorisé


      La date/heure actuelle est Jeu 19 Oct 2017 - 16:35