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.


    Catégories onglets - descriptions déroulantes

    Partagez
    avatar
    Onyx
    FémininAge : 24Messages : 3133

    le Mer 16 Juil 2014 - 21:54

    Rappel du premier message :




    Catégories en onglets - descriptions déroulantes


    Voici un petit LS de catégories en onglets avec la descriptions des forums qui apparaissent en déroulant quand on survole l'image que j'ai fait pour la demande de Shuna et pour lequel j'ai utilisé ce tuto pour les onglets.

    Pour l'aperçu, c'est juste ici : https://redcdn.net/hpimg4/pics/934353Sanstitre2.png

    Ce code est en quatre parties.
    • Tout d'abord, nous allons installer le système d'onglets dans le template et voir comment mettre le nombre d'onglets que vous souhaitez.
    • Ensuite, nous allons activer le système d'onglets en mettant installant un code javascript.
    • Puis, nous allons mettre en forme les catégories à l'aide du CSS.
    • Finalement, nous allons mettre un code dans les descriptions de forums pour qu'il se déroule au survol de l'image (comme avec le design de super-héros de N-U).

    - Pour ce qui est de l'hiérarchie et la structure des catégories, il faut choisir "Séparer les catégories sur l'index : Moyen".
    - La version du forum est PHPBB2.

    Mettre un crédit vers Never-Utopia est obligatoire si vous utilisez ce LS.



    1. Onglets des catégories (Template Index_Box)


    Nous allons commencer par aller dans les templates, plus précisément dans le template "Index_box" .

    Pour cela, nous allons aller dans :
    > PANNEAU D'ADMINISTRATION
    > > AFFICHAGE
    > > > TEMPLATES
    > > > > GÉNÉRAL
    > > > > > INDEX_BOX

    Puis, on va entièrement remplacer le template "Index_Box" par ceci :
    Code:
    <table width="100%" border="0" cellspacing="1" cellpadding="0" align="center">
     <tr>
     <td valign="bottom">
     <!-- BEGIN switch_user_logged_in -->
     <span class="gensmall">{LAST_VISIT_DATE}<br />
     {CURRENT_TIME}<br />
     </span>
     <!-- END switch_user_logged_in -->
     <div class="nav"><a class="nav" href="{U_INDEX}">{L_INDEX}</a>{NAV_CAT_DESC}</div>
     </td>
     <td class="gensmall" align="right" valign="bottom">
     <!-- BEGIN switch_user_logged_in -->
     <a class="gensmall" href="{U_SEARCH_NEW}">{L_SEARCH_NEW}</a><br />
     <a class="gensmall" href="{U_SEARCH_SELF}">{L_SEARCH_SELF}</a><br />
     <!-- END switch_user_logged_in -->
     <a class="gensmall" href="{U_SEARCH_UNANSWERED}">{L_SEARCH_UNANSWERED}</a>
     </td>
     </tr>
    </table>

    <center><div id="cate_tout"><div id="conteneur_onglets">
    <table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
     <td class="ongleto" ><div>Onglet 1</div></td>
     <td class="ongleto"><div>Onglet 2</div></td>
     <td class="ongleto"><div>Onglet 3</div></td>
     <td class="ongleto"><div>Onglet 4</div></td>
     <td class="ongleto"><div>Onglet 5</div></td>
     <td class="ongleto"><div>Onglet 6</div></td>
     <td class="ongleto" style="border-right: none;"><div>Onglet 7</div></td>
    </tr></table>
    </div>
    <div id="conteneur_categories">
    <!-- BEGIN catrow --><!-- BEGIN tablehead -->
    <div class="categorie"><table width="100%" border="0" cellspacing="0" cellpadding="0">
     <!-- END tablehead -->
     <!-- BEGIN cathead -->
     <!-- END cathead -->
     <!-- BEGIN forumrow -->
     <tr><td><table class="forum_bloc" width="100%" cellspacing="0" cellpadding="0"><tr>
     <td rowspan="2" class="forum_img_new" align="center" valign="middle">
     <img title="{catrow.forumrow.L_FORUM_FOLDER_ALT}" src="{catrow.forumrow.FORUM_FOLDER_IMG}" alt="{catrow.forumrow.L_FORUM_FOLDER_ALT}" />
     </td>
     <td class="forum_forumlink" valign="top">
     <a class="forumlink" href="{catrow.forumrow.U_VIEWFORUM}">{catrow.forumrow.FORUM_NAME}</a>
                    </td>
     <td rowspan="2" class="forum_desc" align="center" valign="middle">
     {catrow.forumrow.FORUM_DESC}
     </td></tr><tr>
     <td class="forum_sous" valign="bottom">
     {catrow.forumrow.L_LINKS}{catrow.forumrow.LINKS}
     </td>
     </tr></table></td></tr>
     <!-- END forumrow -->
     <!-- BEGIN catfoot -->
     <!-- END catfoot -->
     <!-- BEGIN tablefoot -->
    </table></div>
    <!-- END tablefoot --><!-- END catrow -->
      </div></div></center>

    Il y a 7 catégories dans ce code et il m'en faut juste 5...
    Comment on fait pour rajouter des onglets?
    Ou en supprimer?
    Et d'ailleurs, comment on change leurs noms?

    Heureusement, ce n'est pas pas trop compliqué. On va commencer par retrouver la section des onglets dans le template, à savoir ce bout de code :
    Code:
    <div id="conteneur_onglets">
    <table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
     <td class="ongleto" ><div>Onglet 1</div></td>
     <td class="ongleto"><div>Onglet 2</div></td>
     <td class="ongleto"><div>Onglet 3</div></td>
     <td class="ongleto"><div>Onglet 4</div></td>
     <td class="ongleto"><div>Onglet 5</div></td>
     <td class="ongleto"><div>Onglet 6</div></td>
     <td class="ongleto" style="border-right: none;"><div>Onglet 7</div></td>
    </tr></table>
    </div>

    C'est assez explicite, non?

    Vous pouvez voir que j'ai 7 catégories, donc 7 onglets. À vous de supprimer ou d'ajouter le nombre d'onglets que vous souhaitez.

    Il faut juste faire attention à un petit détail, à savoir que le dernier onglet a un style un peu différent. En effet, vous constaterez que mon dernier onglet a un « style="border-right: none;" ». Il faudrait faire attention à garder cette particularité du dernier onglet.

    Pour ce qui est de renommer un onglet pour le titre de votre catégorie, il suffit de remplacer la partie "Onglet #" par le nom que vous voulez.




    2. Activer les onglets (Javascript)


    Ensuite, pour que les onglets fonctionnent, il va falloir aller installer un petit javascript.

    Pour cela, nous allons aller dans :
    > PANNEAU D'ADMINISTRATION
    > > MODULES
    > > > HTML & JAVASCRIPT
    > > > > GESTION DES CODES JAVASCRIPT

    Si le "Activer la gestion des codes Javascript" est à "non", il faut le changer pour "oui" et enregistrer.

    • Ensuite, on clique sur "Créer un nouveau Javascript"
    • On choisit un nom, comme "Catégories en onglets" par exemple.
    • On choisit le placement "Sur l'index"
    • Enfin, on met le javascript suivant et on enregistre :

    Code:
    $('document').ready(function()
       {
      if($('.categorie').size() > 1)
        {
          $('#conteneur_onglets').css( 'display' , 'block' );
          $('#conteneur_onglets .ongleto').click(function()
          {
             change_categorie( $('.ongleto', '#conteneur_onglets').index( this ) )
          });
          
          $('.ongleto:eq(0)').click();
    }
       });

       function change_categorie( index )
       {
          if( $('.categorie:eq(' + index + ')').size() != 0 )
          {
             $('#conteneur_categories').css( 'min-height' , $('.categorie:eq(' + index + ')').outerHeight() );

            
             $('.categorie').css( 'display' , 'none' );
             $('.categorie:eq(' + index + ')').fadeIn( 500 );
            
             $('.ongleto.actif').removeClass('actif');
             $('.ongleto:eq('+ index +')').addClass('actif');
          }
          else alert('Vous ne pouvez pas accéder à cette catégorie');
       }



    3. Mise en forme (CSS)


    Si vous regardez vos catégories, vous voyez sans doute que ce n'est pas très esthétique pour le moment. Du coup, nous allons mettre en forme nos catégories à l'aide du CSS.

    Pour cela, nous allons aller dans :
    > PANNEAU D'ADMINISTRATION
    > > AFFICHAGE
    > > > IMAGES ET COULEURS
    > > > > COULEURS
    > > > > > FEUILLE DE STYLE CSS

    Puis, nous allons ajouter le CSS suivant :
    Code:
    /****************************************** DÉBUT CATÉGORIES ******************************************/

    /* Contient les catégories ET les conglets*/
    #cate_tout {
      background: #D8DBE6;
      text-align: center;
      color: #000000;
      font-family: New Times Roman;
      font-size: 13px;
      border: 8px double #1B2836;
      border-bottom: 7px double #1B2836;
      width: 700px;   /* Largeur des catégories*/
    }

    /* Contient les onglets */
    #conteneur_onglets {
      display: none;
      text-align: center;
      border-bottom: double 8px #1B2836;
    }
      
    /* Onglets */
    .ongleto {
      cursor: pointer;
      height: 50px;
      text-align: center;
      color: #26394d;
      background-color: #D8DBE6;
      border-right: solid 1px #1B2836;
      font-family: monotype corsiva;
      font-size: 20px;
      text-shadow: 0 0 1px black;
    }
    /* Onglet Actif */
    .actif {
      background: #353E47;
      cursor: default;
      color: #D8DBE6;
      text-shadow: 0 0 1px white;
    }

    /* Bloc qui entoure chaque catégorie */  
    .categorie {
    }

    /* Bloc qui entoure chaque forum */
    .forum_bloc {
      border-bottom: solid 1px #1B2836;
    }

    /* Bloc de l'image New Old Lock */
    .forum_img_new {
      width: 75px;
      height: 75px;
      padding: 2px;
    }
    /* Image New Old Lock */
    .forum_img_new img {
      width: 75px;
      height: 75px;
    }

    /* Bloc du titre du forum */
    .forum_forumlink {
      padding: 2px;
    }
    /* Titre du forum */
    .forumlink {
      margin-top: 5px;
      font-family: monotype corsiva;
      font-size: 28px;
      color: #143252!important;
      text-shadow: 0px 0px 2px #000000;
      letter-spacing: 0px;
      transition: all 0.5s;
      -moz-transition: all 0.5s;
      -o-transition: all 0.5s;
      -webkit-transition: all 0.5s;
    }
    /* Titre du forum Survolé*/
    .forumlink:hover {
      letter-spacing: 1px;
      text-decoration: none!important;
    }

    /* Bloc des sous-forums */
    .forum_sous {
      height: 25px;
      padding: 2px;
    }

    /* Bloc de l'image de forum et description */
    .forum_desc {
      width: 200px;
      height: 75px;
      padding: 2px;
    }
    /* Infobulle des descriptions des forums */
    .desc_infobulle {
      position: relative;
      margin: auto;
    }
    /* Image de forum */
    .desc_infobulle img {
      width: 200px;
      height: 75px;
      margin-bottom: -16px;
      z-index: 2;
    }
    /* Descriptions cachées des forums */
    .desc_desc {
      font-family: Times new roman;
      font-style: italic;
      font-size: 13px;
      position: absolute;
      color: #D8DBE6;
      top: 0px;
      right: 200px;
      width: 0px;
      height: 71px;
      padding: 0px;
      padding-bottom: 3px;
      padding-top: 3px;
      overflow: auto;
      text-align: justify;
      background-color: #2e3133;
      z-index: 1;
      transition: all 0.5s;
      -moz-transition: all 0.5s;
      -o-transition: all 0.5s;
      -webkit-transition: all 0.5s;
    }
    /* Descriptions visibles des forums */
    .desc_infobulle:hover .desc_desc {
      width: 400px;
      height: 69px;
      padding: 3px;
    }

    /****************************************** FIN CATÉGORIES ******************************************/



    4. Descriptions déroulantes au survol de l'image


    C'est bien beau, mais il nous manque toujours les descriptions des forums qui se déroule au passage de l'image du forum. Du coup, on va aller l'ajouter ^^

    Pour cela, nous allons aller dans :
    > PANNEAU D'ADMINISTRATION
    > > GÉNÉRAL
    > > > FORUM
    > > > > CATÉGORIES ET FORUMS

    Puis, vous aller pouvoir mettre ce code à la place de vos descriptions de forum. L'image de chaque forum peut être modifiée et la description en elle-même va à la place du charabia en latin :
    Code:
    <div class="desc_infobulle">
     <img alt="Survolez-moi ~" src="Url de l'image" />
     <div class="desc_desc">
     Iam in altera philosophiae parte. quae est quaerendi ac disserendi, quae logikh dicitur, iste vester plane, ut mihi quidem videtur, inermis ac nudus est. tollit definitiones, nihil de dividendo ac partiendo docet, non quo modo efficiatur concludaturque ratio tradit, non qua via captiosa solvantur ambigua distinguantur ostendit; iudicia rerum in sensibus ponit, quibus si semel aliquid falsi pro vero probatum sit, sublatum esse omne iudicium veri et falsi putat.
     </div>
    </div>

    C'est tout!

    À plus !


    Un petit merci ou commentaire est toujours le bienvenu ^^
    Si vous avez des problèmes avec ce LS ou des questions, venez poster ici.


    Dernière édition par Onyx le Jeu 31 Mai 2018 - 2:08, édité 4 fois
    avatar
    kiracamus
    FémininAge : 32Messages : 18

    le Dim 20 Sep 2015 - 15:23

    Oua, il y a tout, des onglets, des images pour les lieux et même leur description, merci !
    avatar
    Sylfaen
    FémininAge : 20Messages : 69

    le Mar 22 Sep 2015 - 11:23

    Thanks ;3
    avatar
    Neyotox
    MasculinAge : 25Messages : 37

    le Ven 25 Sep 2015 - 1:47

    Wow, merci
    avatar
    Shaolan
    MasculinAge : 27Messages : 107

    le Dim 27 Sep 2015 - 6:35

    Merci beaucoup
    avatar
    Romann
    FémininAge : 24Messages : 183

    le Jeu 1 Oct 2015 - 21:12

    merci !



    avatar
    Youlia
    FémininAge : 25Messages : 28

    le Mar 13 Oct 2015 - 12:08

    Merci beaucoup du partage !
    avatar
    Demowee
    MasculinAge : 22Messages : 43

    le Mar 13 Oct 2015 - 21:25

    Un petit merci Razz
    avatar
    Wolf Valley
    FémininAge : 18Messages : 70

    le Mer 28 Oct 2015 - 19:15

    Merci
    avatar
    Shoki
    FémininAge : 17Messages : 1310

    le Mer 28 Oct 2015 - 19:29

    Merci !





    avatar
    Llariarith
    FémininAge : 33Messages : 217

    le Dim 1 Nov 2015 - 22:15

    top ! merci Wink
    avatar
    SvenO
    MasculinAge : 24Messages : 78

    le Mer 11 Nov 2015 - 11:47

    Merci !



    avatar
    maxime123
    MasculinAge : 22Messages : 8

    le Jeu 12 Nov 2015 - 7:56

    Enfin! Merci beaucoup, après fort fort fort longtemps je trouve enfin comment faire *-*
    avatar
    motorloic
    MasculinAge : 20Messages : 11

    le Lun 30 Nov 2015 - 3:47

    merci
    avatar
    Elewen
    FémininAge : 18Messages : 22

    le Sam 2 Jan 2016 - 12:54

    merci
    avatar
    Kira Hatsuki
    FémininAge : 16Messages : 142

    le Lun 11 Jan 2016 - 20:58

    Merci ! ^^
    avatar
    Wolund
    MasculinAge : 20Messages : 53

    le Mar 12 Jan 2016 - 17:31

    J'aimerai essayer ce code qui m'as l'air parfait merci!
    avatar
    Lilith Aube
    FémininAge : 32Messages : 488

    le Sam 20 Fév 2016 - 15:14

    merci
    avatar
    Kilda
    FémininAge : 38Messages : 73

    le Sam 20 Fév 2016 - 15:19

    merci
    avatar
    blastrall
    MasculinAge : 24Messages : 41

    le Dim 21 Fév 2016 - 20:46

    merci bien
    avatar
    Ariemm
    FémininAge : 17Messages : 107

    le Lun 22 Fév 2016 - 15:15

    Merki ^^
    avatar
    aghate
    FémininAge : 48Messages : 3

    le Jeu 25 Fév 2016 - 12:32

    merci,original ,sympa,
    avatar
    Mr. Shidokaz
    MasculinAge : 24Messages : 190

    le Lun 14 Mar 2016 - 23:28

    Merci infiniment pour le partage ! Very Happy
    avatar
    Banhjo
    MasculinAge : 21Messages : 76

    le Sam 19 Mar 2016 - 4:09

    Merci
    avatar
    JaydenRcr
    MasculinAge : 19Messages : 32

    le Lun 21 Mar 2016 - 22:32

    thank's
    avatar
    LegendsOfToday
    FémininAge : 22Messages : 78

    le Mar 22 Mar 2016 - 13:12

    Merci! :)
    Contenu sponsorisé


      La date/heure actuelle est Mar 18 Sep 2018 - 22:56