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 :

Comment aligner deux boutons ?


Sujet :

Positionnement en CSS

  1. #1
    apt
    apt est déconnecté
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    867
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 867
    Points : 118
    Points
    118
    Par défaut Comment aligner deux boutons ?
    Bonjour à tous,

    J'ai un formulaire (Conditions d'acceptation) avec un textarea et deux champs input de type bouton.

    Je trouve des duficultés pour pour aligner les deux boutons en horizontale sous le textarea ...

    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
    <div style="width:400px; margin:auto">
      <form action="" method="post" name="search" id="searchform">
        <fieldset>
        <legend>Step 1 - Terms and Conditions of acceptation</legend>
        <textarea name="conditions" cols="" rows="" class="inp">
      1 - Conditions
      2 - Accept
      </textarea>
        <ol style="list-style:none;display:inline">
          <li style="display:block">
            <input name="Accept" type="button"  value="Accept" class="submit"/>
          </li>
          <li style="display:block">
            <input name="Refuse" type="button"  value="Refuse" class="submit"/>
          </li>
        </ol>
        </fieldset>
      </form>
    </div>
    Merci

  2. #2
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    Bonjour,

    Le principe d'une liste est de faire une énumération.

    1_
    2_
    3_
    A partir de là, comment veux-tu que si tu fais une énumération de tes inputs, tu puisses les avoirs sur la même ligne?

    Mettre ton bouton dans une puce de liste, c'est le faire aller sur la liste suivante, au moins dans ton cas.

  3. #3
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Deux boutons en ligne pour la table 2 !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <ul style="list-style: none;">
        <li style="display: inline;"><input name="Accept" type="button"  value="Accept" class="submit"/></li>
        <li style="display: inline;"><input name="Refuse" type="button"  value="Refuse" class="submit"/></li>
    </ul>

  4. #4
    Membre émérite Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Points : 2 444
    Points
    2 444
    Par défaut
    Citation Envoyé par Deallyra Voir le message
    Bonjour,

    Le principe d'une liste est de faire une énumération.

    A partir de là, comment veux-tu que si tu fais une énumération de tes inputs, tu puisses les avoirs sur la même ligne?

    Mettre ton bouton dans une puce de liste, c'est le faire aller sur la liste suivante, au moins dans ton cas.
    Hello,
    tous dépend de ce qu'entend apt par alignement horizontale (alignement à l'horizontal ou horizontal)
    Si c'est une alignement horizontal et bien il faudra qu'Apt nous fournisse la totalité du code XHTML/CSS.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        <ol style="list-style:none;display:inline">
          <li style="display:block">
            <input name="Accept" type="button"  value="Accept" class="submit"/>
          </li>
          <li style="display:block">
            <input name="Refuse" type="button"  value="Refuse" class="submit"/>
          </li>
        </ol>
    Je doute qu'une liste ordonnée soit une choix pertinent au vu de son contenu.
    En l'état ça n'apportera rien à l'utilisateur donc à supprimer

  5. #5
    apt
    apt est déconnecté
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    867
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 867
    Points : 118
    Points
    118
    Par défaut
    Bonjour Erwan31,

    Citation Envoyé par Erwan31 Voir le message
    Je doute qu'une liste ordonnée soit une choix pertinent au vu de son contenu.
    En l'état ça n'apportera rien à l'utilisateur donc à supprimer
    Avant, j'ai essayé avec input bouton seulement, puis il m'est venu l'idée d'essayer avec une lsite à puce et enfin avec une liste ordonnée, mais avec toutes les solutions, je n'ai pas pu avoir le rendu voulu

    Bon voila comment ma page se présente (sans la solution de jml94) :

    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Condistions Form</title>
    <style type="text/css">
    <!--
    input, textarea { 
    border: 3px double #DDDDDD; 
    padding: 2px; 
    font: 11px Geneva, Arial, Helvetica, sans-serif; 
    display: block; 
    margin: 4px 0 4px 0; 
    } 
    #styleform input.inp, textarea.inp
    	{
    	border: 1px solid #ddd;
    	font: 11px arial,verdana, sans-serif;
    	color: #443;
    	padding: 2px;
    	text-indent: 1.2em;
    	outline: none;
    	}
     
    #styleform input.inp {
    	background: #fff url(images/Simplicity.png) no-repeat left center;
    	width: 120px;
    	height:18px;
    	}
     
    #styleform textarea.inp {
    	width: 89%;
    	height:150px;
    	overflow:scroll;
    }
     
    #text
    	{
    	height:150px;
    	overflow:scroll;
    }
     
    	/*Fix IE*/
    #styleform input.inp, textarea.inp
    	{
    	padding: 0 1.3em;
        text-indent: 0
    }
     
    #styleform input.inp:hover, textarea.inp:hover,
    #styleform input.inp:focus, textarea.inp:hover
    	{ 
    	border: 1px solid #aaa; 	
    		}
     
     #styleform input.submit {   
        border:0px;
        margin: 0 3px 0 0;
    	background-color: #85C329;
    	color:white;
     }
     #styleform input.submit:hover,
     #styleform input.submit :active
    {
    	background-color: #FB9622;
    }
    fieldset {
    	font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
    	font-size: 12px;
    	color: #33CCFF;
    	border: 1px solid #3399FF;
    	padding:2px;
    }
     
    -->
    </style>
    </head>
     
    <body>
    <div style="width:400px; margin:auto">
    <form action="" method="post" name="search" id="styleform">
      <fieldset>
      <legend>Step 1 - Terms and Conditions of acceptation</legend>
      <textarea name="conditions" cols="" rows="" class="inp">
      1 - Conditions
      2 - Accept
      </textarea>
        <ol style="list-style:none;display:inline">
    	<li style="display:block"><input name="Accept" type="button"  value="Accept" class="submit"/></li>
        <li style="display:block"><input name="Refuse" type="button"  value="Refuse" class="submit"/></li>
    	</ol>
      </fieldset>
    </form>
    </div>
    </body>
    </html>

    Citation Envoyé par jml94 Voir le message
    Deux boutons en ligne pour la table 2 !
    Ca ne marche pas !

  6. #6
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par apt Voir le message
    Bon voila comment ma page se présente (sans la solution de jml94)
    Je n'avais donc pas compris la question...
    Du coup, il faut effectivement répondre à la question de Erwan31

    Citation Envoyé par Erwan31
    tous dépend de ce qu'entend apt par alignement horizontale (alignement à l'horizontal ou horizontal)

  7. #7
    Membre émérite Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Points : 2 444
    Points
    2 444
    Par défaut
    Citation Envoyé par apt Voir le message
    Avant, j'ai essayé avec input bouton seulement, puis il m'est venu l'idée d'essayer avec une lsite à puce et enfin avec une liste ordonnée, mais avec toutes les solutions, je n'ai pas pu avoir le rendu voulu
    Erreur d'approche classique > tu détournes l'usage de cet élément à des fins de présentation, ce qu'il faut éviter...

  8. #8
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par apt Voir le message
    Ca ne marche pas !
    C'est sûrement que je n'ai rien compris.

    Tu veux aligner deux boutons sur la même ligne ou bien aligner les bords gauche de ces boutons qui seront l'un au dessus de l'autre ?

  9. #9
    apt
    apt est déconnecté
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    867
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 867
    Points : 118
    Points
    118
    Par défaut
    Citation Envoyé par jml94 Voir le message
    Je n'avais donc pas compris la question...
    Du coup, il faut effectivement répondre à la question de Erwan31
    Non, par contre tu as bien compris la question, la preuve, j'ai vu des codes sur le net qui utilisent bien des listes à puce (avec line-style : none) pour organiser les champs et libellés des formulaires.

    Pour mon cas, je voulais mettre mes deux boutons sur la même ligne (cote à cote avec un espace entre les deux bien sur) au lieu des les avoir l'un superposé à l'autre.

  10. #10
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par apt Voir le message
    Pour mon cas, je voulais mettre mes deux boutons sur la même ligne (cote à cote avec un espace entre les deux bien sur) au lieu des les avoir l'un superposé à l'autre.
    Alors j'ai un code super fort pour ça. Accroches-toi bien, c'est high level :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <input name="Accept" type="button"  value="Accept" class="submit"/>
    <input name="Refuse" type="button"  value="Refuse" class="submit"/>
    Hélas, ce tip hyper sophistiqué ne marchera pas chez toi à cause du style que tu indiques en début de page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    input, textarea { 
    border: 3px double #DDDDDD; 
    padding: 2px; 
    font: 11px Geneva, Arial, Helvetica, sans-serif; 
    display: block; 
    margin: 4px 0 4px 0; 
    }
    Ce style est-il nécessaire ?

  11. #11
    Membre émérite Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Points : 2 444
    Points
    2 444
    Par défaut
    Citation Envoyé par jml94 Voir le message
    Alors j'ai un code super fort pour ça. Accroches-toi bien, c'est high level :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <input name="Accept" type="button"  value="Accept" class="submit"/>
    <input name="Refuse" type="button"  value="Refuse" class="submit"/>
    Lol alors si ce n'était que ça... Es tu certain que tu as beaucoup cherché Apt?
    Avec ça <li style="display:block"> ça risque pas de marcher non plus.
    Je crois qu'il va falloir que tu révises les fondamentaux que tu n'as manifestement pas encore acquis Apt

  12. #12
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    J'ai trouvé ça en ressource interne : http://pbnaigeon.developpez.com/tuto...s-de-base/#LIV

    Et je plaisantais un peu, mais je dois bien avouer que j'ai mis quelques temps à être à l'aise avec les displays, alors ne te prive pas de cette lecture édifiante.

    Bon courage.

  13. #13
    apt
    apt est déconnecté
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    867
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 867
    Points : 118
    Points
    118
    Par défaut
    Citation Envoyé par Erwan31 Voir le message
    Lol alors si ce n'était que ça... Es tu certain que tu as beaucoup cherché Apt?
    Avec ça <li style="display:block"> ça risque pas de marcher non plus.
    Je crois qu'il va falloir que tu révises les fondamentaux que tu n'as manifestement pas encore acquis Apt
    Oui tu as raison Erwan31

    Et c'est sur que je devrais encore apprendre

    D'ailleurs cette faute commise en haut m'a appris, avec l'aide du lien du jml94, de différencier les éléments inline et ceux en block ainsi que leurs affichage respectif

  14. #14
    apt
    apt est déconnecté
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    867
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 867
    Points : 118
    Points
    118
    Par défaut
    Citation Envoyé par jml94 Voir le message
    Ce style est-il nécessaire ?
    C'est cette ligne :

    qui causais le probleme

    Je l'ai enlevé, et hop !

    Les boutons se placent l'un à coté de l'autre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <ul style="list-style: none;">
         <li style="display: inline;"><input name="Accept" type="button"  value="Accept" class="submit"/></li>
         <li style="display: inline;"><input name="Refuse" type="button"  value="Refuse" class="submit"/></li>
        </ul>
    J'ai ensuite fait un autre essai, en créant une nouvelle class :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #styleform span.2btn{
         display:block;
         margin:0 10px;
    }
    avec le XHTML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <span class"2btn"><input name="Accept" type="button"  value="Accept" class="submit"/></span>
    <span class="2btn"><input name="Refuse" type="button"  value="Refuse" class="submit"/></span>
    et ça marche aussi

    Par contre cette ce troisième essai ne marche pas (je crois que j'ai encore fait une bétise )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    #divbtn ul {
         list-style:none;
    }
     
    #divbtn ul il {
         display:inline;
         margin :0 10px;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <div id="divbtn">
        <ul>
         <li><input name="Accept" type="button"  value="Accept3" class="submit"/></li>
         <li><input name="Refuse" type="button"  value="Refuse3" class="submit"/></li>
        </ul>
      </div>
    Pourquoi ?

    Merci

  15. #15
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Je te propose un autre truc old school, assez peu en vogue actuellement : la simplicité.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    #divbtn input {
         margin :0 10px;
    }
     
    <div id="divbtn">
         <input name="Accept" type="button"  value="Accept3" class="submit"/>
         <input name="Refuse" type="button"  value="Refuse3" class="submit"/>
    </div>

  16. #16
    Membre émérite Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Points : 2 444
    Points
    2 444
    Par défaut
    Citation Envoyé par jml94 Voir le message
    Je te propose un autre truc old school, assez peu en vogue actuellement : la simplicité.


    Encore mieux (mais ça dépend du contexte...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input name="Accept" type="button"  value="Accept3" class="submit"/>
    <input name="Refuse" type="button"  value="Refuse3" class="submit"/>

    Apt, tu n'as pas besoin d'imbriquer tes input dans d'autres éléments pour agir sur leur affichage.
    Essaye de t'en tenir au minimum de balises et éviter des éléments inutiles autant que possible.

  17. #17
    apt
    apt est déconnecté
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    867
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 867
    Points : 118
    Points
    118
    Par défaut
    Ca marche ta solution jml94.

    Erwan31 : Comment tu as fait pour que ton code, si simple qu'il soit, marche ?

  18. #18
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par apt Voir le message
    Ca marche ta solution jml94.

    Erwan31 : Comment tu as fait pour que ton code, si simple qu'il soit, marche ?
    Je proteste avec la dernière vigeur !

    Et qu'est-ce que je disais là : http://www.developpez.net/forums/d65...s/#post3871279

    On m'écoute jamais t'façons !




  19. #19
    apt
    apt est déconnecté
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    867
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 867
    Points : 118
    Points
    118
    Par défaut
    Non je t'écoute jml94.

    Je n'ai pas pris ce code comme solution proposée

    Je comprends maintenant la difficulté causée par la ligne display:block

    Excuse alors

  20. #20
    Membre émérite Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Points : 2 444
    Points
    2 444
    Par défaut
    Citation Envoyé par jml94 Voir le message
    Bon de toute façon je dis des bêtises étant donné qu'un formulaire ne peut avoir comme descendant direct (enfant) que des éléments de niveaux bloc.

    Donc il faut bien imbriquer les 2 input dans un div ou un p (plus commun).

    Apt > préfère la solution de jlm694.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [HTML 5] Comment avoir deux bouton sumbit qui envoie le formulaire dans 2 pages différentes
    Par pierrot10 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 09/03/2010, 06h54
  2. [ZF 1.9] Aligner deux boutons dans un formulaire
    Par mrjay42 dans le forum Zend_Form
    Réponses: 1
    Dernier message: 26/10/2009, 13h42
  3. comment aligner champ / bouton submit sur une ligne?
    Par danyric dans le forum Struts 2
    Réponses: 7
    Dernier message: 24/06/2008, 16h38
  4. Comment aligner deux blocs par le bas ?
    Par veust80 dans le forum Mise en page CSS
    Réponses: 10
    Dernier message: 04/06/2007, 23h58
  5. [PHP-JS] comment lier deux variable à un bouton radio
    Par faucon54 dans le forum Langage
    Réponses: 15
    Dernier message: 29/05/2007, 17h03

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