Twitter Bootstrap 4
Dans Twitter Bootstrap 4, les entrées et les boutons peuvent être alignés à l'aide des classes input-group-prepend
et input-group-append
(voir https://getbootstrap.com/docs/4.0/components/input-group/#button-addons )
Bouton de groupe sur le côté gauche (préfixe)
<div class="input-group mb-3">
<div class="input-group-prepend">
<button class="btn btn-outline-secondary" type="button">Button</button>
</div>
<input type="text" class="form-control">
</div>
Bouton de groupe sur le côté droit (ajouter)
<div class="input-group mb-3">
<div class="input-group-append">
<button class="btn btn-outline-secondary" type="button">Button</button>
</div>
<input type="text" class="form-control">
</div>
Twitter Bootstrap 3
Comme indiqué dans la réponse de @abimelex, les entrées et les boutons peuvent être alignés en utilisant les .input-group
classes (voir http://getbootstrap.com/components/#input-groups-buttons )
Bouton de groupe sur le côté gauche
<div class="input-group">
<span class="input-group-btn">
<button class="btn btn-default" type="button">Go!</button>
</span>
<input type="text" class="form-control">
</div>
Bouton de groupe sur le côté droit
<div class="input-group">
<input type="text" class="form-control">
<span class="input-group-btn">
<button class="btn btn-default" type="button">Go!</button>
</span>
</div>
Cette solution a été ajoutée pour garder ma réponse à jour, mais veuillez coller votre vote positif sur la réponse fournie par @abimelex .
Twitter Bootstrap 2
Bootstrap propose une .input-append
classe, qui fonctionne comme un élément wrapper et corrige cela pour vous:
<div class="input-append">
<input name="search" id="search"/>
<button class="btn">button</button>
</div>
Comme l'a souligné @OleksiyKhilkevich dans sa réponse, il existe une deuxième façon d'aligner input
et button
d'utiliser la .form-horizontal
classe:
<div class="form-horizontal">
<input name="search" id="search"/>
<button class="btn">button</button>
</div>
Les différences
La différence entre ces deux classes est qu'elles .input-append
placeront le button
haut contre l' input
élément (de sorte qu'elles semblent attachées), où .form-horizontal
placera un espace entre elles.
-- Remarque --
Pour permettre aux éléments input
et button
d'être côte à côte sans espacement, le font-size
a été défini sur 0
dans la .input-append
classe (cela supprime l'espacement blanc entre les inline-block
éléments). Cela peut avoir un effet négatif sur la taille des polices dans l' input
élément si vous souhaitez remplacer les valeurs par défaut à l'aide de em
ou de %
mesures.