IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Alignement du texte dans bouton du menu


Sujet :

Positionnement en CSS

  1. #1
    Membre régulier Avatar de Lost In Translation
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 166
    Points : 89
    Points
    89
    Par défaut Alignement du texte dans bouton du menu
    Coucou,

    Sous ce titre à rallonge se cache en fait un petit problème de rien du tout.

    Mon menu est constitué de 4 boutons, le fond des boutons est géré par le CSS, sauf que "la taille du bouton" à priori est définie par la taille du texte... et ça me créé un espacement "foireux" alors que le bouton est assez grand pour "tous mots" (de mon menu j'entends... essayez pas d'y caler anticonstitutionnellement )

    Mais bon, des visuels valent 100 discours...

    Donc voici l'image.


    Remarquez donc le grand espacement entre Collection et Histoire

    Le code HTML du menu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <div id="nav_wrap">
            <ul>
              <li id="active_nav"><a href="index.php"><span class="test">{$Index_Langue}</span></a></li>
              <li ><a href="collection/"><span>{$Collection_Langue}</span></a></li>
              <li ><a href="informations.php"><span>{$Infos_Langue}</span></a></li>
              <li ><a href="contact/"><span>{$Contact_Langue}</span></a></li>
            </ul>
          </div>
    Le CSS du menu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    #nav_wrap
    {
      background-image: url("../images/arrow.png");
      background-repeat: no-repeat;
      width: 510px;
      padding-top: 85px;
      padding-left:450px;
    }
     
    #nav_wrap ul
    {
      list-style-type: none;
    }
     
    #nav_wrap ul li
    {
      display: inline;
      float:left;
    }
     
    #nav_wrap * a
    {
      color:white;
      text-decoration:none;
    }
     
    #nav_wrap * span
    {
      background-image: url("../images/fond_bouton_mini.png");
      background-repeat: no-repeat;
      padding: 8px 30px 13px 27px;
    }

  2. #2
    Membre éclairé Avatar de c_s_s
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 619
    Points : 747
    Points
    747
    Par défaut
    Bonjour,

    L'espace à droite de collection est tout simplement dû au padding droit de 30 pixels de ton élément span.

    Ca ne se voit que sur collection car le texte est long (on voit bien qu'il dépasse presque du l'image de fond du bouton).

    Si tu mets un mot plus court à la place de collection, tu verras qu'il n'y aura plus de problème.

    Il faut faire une image de fond plus grande pour tes boutons.

  3. #3
    Membre régulier Avatar de Lost In Translation
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 166
    Points : 89
    Points
    89
    Par défaut
    Ah bah voilà.

    Effectivement, en mettant une image plus grande.
    En passant le padding-right de 30 à 0 et en mettant un display:block; sur le span, j'ai pu jouer avec width:100px (longueur du bouton) et mettre un text-align:center pour les liens...

    et c'est au poil.

    Donc merci pour le coup de main car tu avais effectivement raison.

    Ca marche sous Moz, Opéra et Safari... et du coup, ça merdouille sous IE. (J'en ai marre de ces compatibilités...). Aurais-tu une idée ? (ou quelqu'un d'autre hein, on est pas exclusif non plus )

    Voici le rendu IE.


    Et voici la nouvelle version du CSS

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    #nav_wrap
    {
      background-image: url("../images/arrow.png");
      background-repeat: no-repeat;
      width: 510px;
      padding-top: 85px;
      padding-left:450px;
    }
     
    #nav_wrap ul
    {
      list-style-type: none;
    }
     
    #nav_wrap ul li
    {
      display: inline;
      float:left;
    }
     
    #nav_wrap * a
    {
      color:white;
      text-decoration:none;
      text-align:center;
    }
     
    #nav_wrap * span
    {
      display:block;
      background-image: url("../images/fond_bouton_mini.png");
      background-repeat: no-repeat;
      padding: 8px 0px 13px 10px;
      width:100px;
    }

  4. #4
    Membre régulier Avatar de Lost In Translation
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 166
    Points : 89
    Points
    89
    Par défaut
    Bon j'ai un petit soucis...

    Le fait d'avoir fait de mes span des block, ils ne s'affichent plus en ligne mais les uns dessous les autres.

    J'ai tenté de remédier à ça en collant un "float:left;" à mes li... et là d'un coup mon diaporama (en dessous du menu) devient un truc miniature qui se colle à droite de mes boutons...

    Je vous fais suivre 3 captures...

    Image -> pas de float left dans mes menus


    CSS du menu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    #nav_wrap
    {
      background-image: url("../images/arrow.png");
      background-repeat: no-repeat;
      width: 510px;
      padding-top: 85px;
      padding-left:450px;
    }
     
    #nav_wrap ul
    {
      list-style-type: none;
    }
     
    #nav_wrap ul li
    {
      display: inline;
    }
     
    #nav_wrap * a
    {
      color:#942165;
      text-decoration:none;
      text-align:center;
    }
     
    #nav_wrap * span
    {
      display:block;
      background-image: url("../images/fond_bouton_mini.png");
      background-repeat: no-repeat;
      padding: 8px 0px 13px 10px;
      width:100px;
    }
    Image -> ajout du float left pour aligner les menu (ajout de float:left; dans #nav_wrap ul li)



    Donc là on voit mon diapora qui s'est réduit et qui s'affiche derrière les boutons... (je suis tenté de dire wft ^^)

    Et donc...
    Dernière image. Mes span ne sont pas des blocks, et donc pas besoin de float left. Il manque une partie du bouton.



    CSS associé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    #nav_wrap
    {
      background-image: url("../images/arrow.png");
      background-repeat: no-repeat;
      width: 510px;
      padding-top: 85px;
      padding-left:450px;
    }
     
    #nav_wrap ul
    {
      list-style-type: none;
    }
     
    #nav_wrap ul li
    {
      display: inline;
      /*float:left;*/
    }
     
    #nav_wrap * a
    {
      color:#942165;
      text-decoration:none;
      text-align:center;
    }
     
    #nav_wrap * span
    {
      /*display:block;*/
      background-image: url("../images/fond_bouton_mini.png");
      background-repeat: no-repeat;
      padding: 8px 0px 13px 10px;
    /*   width:100px; */
    }

  5. #5
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Essaie de mettre un clear:both sur ton élément contenant le diaporama.

    Ou sinon, un overflow:hidden sur ton ul contenant tes liens.

  6. #6
    Membre régulier Avatar de Lost In Translation
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 166
    Points : 89
    Points
    89
    Par défaut
    Ah bah, là effectivement, ça marche tout de suite mieux.

    */me le note sur son petit calpin

    Bon ben comment dire, rapide, précis, clair net et sans bavure...

    Merci Bisûnûrs pour le clear et Merci à c_s_s pour le le menu.

    Sujet résolu, merci pour tout. (C'est entre autre pourquoi j'adore ce forum, car ça respire la compétence et les gens compétents et ça fait plaisir)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. centrer texte dans bouton de menu
    Par babylone_59 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 01/01/2010, 12h05
  2. Aligner du texte dans un Bouton
    Par FRED.G dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 08/07/2009, 18h18
  3. Alignement vertical texte dans un JTextComponent
    Par barbiche dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 19/09/2007, 12h03
  4. aligner du texte dans une zone de texte
    Par hammag dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 28/07/2006, 15h56
  5. [VBA] aligner le texte dans une cellule
    Par Rakham dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/01/2006, 17h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo