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 : 3132

    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
    Fame
    MasculinAge : 28Messages : 230

    le Mar 30 Déc 2014 - 14:44

    J'ai toujours eu envie d’essayer un forum comme ceci. Je pense que je vais essayer. Very Happy Merci beaucoup à toi. Very Happy
    avatar
    Xperience
    FémininAge : 21Messages : 156

    le Mar 13 Jan 2015 - 23:16

    Merci !



    Alysanne
    FémininAge : 32Messages : 48

    le Jeu 15 Jan 2015 - 2:44

    merci
    avatar
    pinkwinee
    FémininAge : 23Messages : 44

    le Jeu 15 Jan 2015 - 21:07

    Merci beaucoup!
    avatar
    Equestria
    FémininAge : 21Messages : 118

    le Mar 20 Jan 2015 - 4:22

    merci
    avatar
    Professeur Felyne
    MasculinAge : 32Messages : 84

    le Sam 24 Jan 2015 - 16:32

    Merci ^^



    .
    avatar
    Sweetdead
    FémininAge : 22Messages : 38

    le Sam 31 Jan 2015 - 1:03

    Wow, c'est compliqué o_o

    Merci !
    avatar
    Litonya
    FémininAge : 16Messages : 149

    le Sam 7 Fév 2015 - 18:01

    ENFIN JE LE TROUVE
    avatar
    Kirito
    MasculinAge : 22Messages : 200

    le Lun 9 Fév 2015 - 13:17

    Waw
    avatar
    Dark6nika
    FémininAge : 25Messages : 118

    le Ven 20 Fév 2015 - 18:53

    Merci beaucoup de partager ce code qui à l'air très intéressant *-*



    avatar
    Doan Lavita
    FémininAge : 20Messages : 72

    le Ven 20 Fév 2015 - 19:32

    Merci! Very Happy



    avatar
    mace
    MasculinAge : 28Messages : 15

    le Ven 20 Fév 2015 - 20:31

    Merci, j'essaie desuite.
    avatar
    Mangédéfruiélégumeuh
    MasculinAge : 21Messages : 83

    le Mar 3 Mar 2015 - 19:58

    Merci Very Happy
    avatar
    Théine
    MasculinAge : 37Messages : 24

    le Sam 7 Mar 2015 - 4:37

    Merci
    avatar
    Caine Lornan
    MasculinAge : 37Messages : 78

    le Sam 7 Mar 2015 - 15:13

    Superbe merci.
    avatar
    Skylighty
    FémininAge : 88Messages : 97

    le Sam 7 Mar 2015 - 17:45

    merci
    avatar
    Lakia
    FémininAge : 20Messages : 104

    le Mer 11 Mar 2015 - 17:48

    mercii !! ^^
    avatar
    pixelman
    FémininAge : 38Messages : 241

    le Dim 15 Mar 2015 - 11:14

    Merci ^^




    Vit pour manger que de manger pour vivre !
    Citation du jour a écrit:"C'est avec une main sur le coeur que je te dis 'je t'aime',
    mais c'est avec un sourire que je te dis 'je te hais'.... "

    avatar
    Natsumi13
    FémininAge : 22Messages : 64

    le Jeu 19 Mar 2015 - 17:05

    Merci :)
    avatar
    Zeloo
    FémininAge : 22Messages : 65

    le Sam 18 Avr 2015 - 18:12

    Merci Wink



    avatar
    Artchie
    FémininAge : 26Messages : 42

    le Mer 22 Avr 2015 - 20:32

    Merci tout plein ! C'est tellement clair et tout
    avatar
    Lekson
    MasculinAge : 18Messages : 15

    le Jeu 23 Avr 2015 - 9:26

    thank
    avatar
    Littlelittle
    FémininAge : 32Messages : 52

    le Sam 25 Avr 2015 - 15:23

    Merci !





    << A little thing like another >>
    avatar
    Neyokan
    FémininAge : 21Messages : 43

    le Sam 25 Avr 2015 - 19:31

    merci o/
    avatar
    Ryukaï
    MasculinAge : 20Messages : 614

    le Ven 1 Mai 2015 - 11:45

    Merci Very Happy



    Contenu sponsorisé


      La date/heure actuelle est Mar 17 Juil 2018 - 3:57