Boutons
Utilisez les styles de boutons personnalisés de Bootstrap pour les actions dans les formulaires, les boîtes de dialogue, etc., avec la prise en charge de plusieurs tailles, états, etc.
Bootstrap comprend plusieurs styles de boutons prédéfinis, chacun servant son propre objectif sémantique, avec quelques extras ajoutés pour plus de contrôle.
<button type="button" class="btn btn-primary">Primary</button>
<button type="button" class="btn btn-secondary">Secondary</button>
<button type="button" class="btn btn-success">Success</button>
<button type="button" class="btn btn-danger">Danger</button>
<button type="button" class="btn btn-warning">Warning</button>
<button type="button" class="btn btn-info">Info</button>
<button type="button" class="btn btn-light">Light</button>
<button type="button" class="btn btn-dark">Dark</button>
<button type="button" class="btn btn-link">Link</button>
Donner du sens aux technologies d'assistance
L'utilisation de la couleur pour ajouter du sens ne fournit qu'une indication visuelle, qui ne sera pas transmise aux utilisateurs de technologies d'assistance, telles que les lecteurs d'écran. Assurez-vous que les informations désignées par la couleur sont soit évidentes à partir du contenu lui-même (par exemple, le texte visible), soit incluses par des moyens alternatifs, tels que du texte supplémentaire masqué avec la .sr-only
classe.
Les .btn
classes sont conçues pour être utilisées avec l' <button>
élément. Cependant, vous pouvez également utiliser ces classes sur des éléments <a>
ou <input>
(bien que certains navigateurs puissent appliquer un rendu légèrement différent).
Lors de l'utilisation de classes de boutons sur <a>
des éléments qui sont utilisés pour déclencher des fonctionnalités dans la page (comme la réduction du contenu), plutôt que de créer des liens vers de nouvelles pages ou sections de la page actuelle, ces liens doivent recevoir un role="button"
pour transmettre de manière appropriée leur objectif aux technologies d'assistance telles que lecteurs d'écran.
<a class="btn btn-primary" href="#" role="button">Link</a>
<button class="btn btn-primary" type="submit">Button</button>
<input class="btn btn-primary" type="button" value="Input">
<input class="btn btn-primary" type="submit" value="Submit">
<input class="btn btn-primary" type="reset" value="Reset">
Vous avez besoin d'un bouton, mais pas des couleurs d'arrière-plan lourdes qu'ils apportent ? Remplacez les classes de modificateur par défaut par .btn-outline-*
celles qui suppriment toutes les images et couleurs d'arrière-plan sur n'importe quel bouton.
<button type="button" class="btn btn-outline-primary">Primary</button>
<button type="button" class="btn btn-outline-secondary">Secondary</button>
<button type="button" class="btn btn-outline-success">Success</button>
<button type="button" class="btn btn-outline-danger">Danger</button>
<button type="button" class="btn btn-outline-warning">Warning</button>
<button type="button" class="btn btn-outline-info">Info</button>
<button type="button" class="btn btn-outline-light">Light</button>
<button type="button" class="btn btn-outline-dark">Dark</button>
Envie de boutons plus grands ou plus petits ? Ajoutez .btn-lg
ou .btn-sm
pour des tailles supplémentaires.
<button type="button" class="btn btn-primary btn-lg">Large button</button>
<button type="button" class="btn btn-secondary btn-lg">Large button</button>
<button type="button" class="btn btn-primary btn-sm">Small button</button>
<button type="button" class="btn btn-secondary btn-sm">Small button</button>
Créez des boutons au niveau du bloc (ceux qui s'étendent sur toute la largeur d'un parent) en ajoutant .btn-block
.
<button type="button" class="btn btn-primary btn-lg btn-block">Block level button</button>
<button type="button" class="btn btn-secondary btn-lg btn-block">Block level button</button>
Les boutons apparaîtront enfoncés (avec un arrière-plan plus sombre, une bordure plus sombre et une ombre incrustée) lorsqu'ils sont actifs. Il n'est pas nécessaire d'ajouter une classe à <button>
s car ils utilisent une pseudo-classe . Cependant, vous pouvez toujours forcer la même apparence active avec .active
(et inclure l' aria-pressed="true"
attribut) si vous devez répliquer l'état par programmation.
<a href="#" class="btn btn-primary btn-lg active" role="button" aria-pressed="true">Primary link</a>
<a href="#" class="btn btn-secondary btn-lg active" role="button" aria-pressed="true">Link</a>
Rendez les boutons inactifs en ajoutant l' disabled
attribut booléen à n'importe quel <button>
élément.
<button type="button" class="btn btn-lg btn-primary" disabled>Primary button</button>
<button type="button" class="btn btn-secondary btn-lg" disabled>Button</button>
Les boutons désactivés utilisant l' <a>
élément se comportent un peu différemment :
<a>
s ne prennent pas en charge l'disabled
attribut, vous devez donc ajouter la.disabled
classe pour qu'elle apparaisse visuellement désactivée.- Certains styles adaptés à l'avenir sont inclus pour désactiver tous
pointer-events
les boutons d'ancrage. Dans les navigateurs qui prennent en charge cette propriété, vous ne verrez pas du tout le curseur désactivé. - Les boutons désactivés doivent inclure l'
aria-disabled="true"
attribut permettant d'indiquer l'état de l'élément aux technologies d'assistance.
<a href="#" class="btn btn-primary btn-lg disabled" role="button" aria-disabled="true">Primary link</a>
<a href="#" class="btn btn-secondary btn-lg disabled" role="button" aria-disabled="true">Link</a>
Mise en garde sur la fonctionnalité de lien
La .disabled
classe utilise pointer-events: none
pour essayer de désactiver la fonctionnalité de lien de <a>
s, mais cette propriété CSS n'est pas encore normalisée. De plus, même dans les navigateurs prenant en charge pointer-events: none
, la navigation au clavier reste inchangée, ce qui signifie que les utilisateurs de clavier voyants et les utilisateurs de technologies d'assistance pourront toujours activer ces liens. Donc, pour être sûr, ajoutez un tabindex="-1"
attribut sur ces liens (pour les empêcher de recevoir le focus du clavier) et utilisez un JavaScript personnalisé pour désactiver leur fonctionnalité.
Faites-en plus avec les boutons. Contrôlez les états des boutons ou créez des groupes de boutons pour plus de composants comme les barres d'outils.
Ajouter data-toggle="button"
pour basculer l'état d'un bouton active
. Si vous pré-basculez un bouton, vous devez ajouter manuellement la .active
classe et aria-pressed="true"
le fichier <button>
.
<button type="button" class="btn btn-primary" data-toggle="button" aria-pressed="false" autocomplete="off">
Single toggle
</button>
Les styles de Bootstrap .button
peuvent être appliqués à d'autres éléments, tels que <label>
s, pour fournir une case à cocher ou un bouton de style radio. Ajoutez data-toggle="buttons"
à un .btn-group
contenant ces boutons modifiés pour activer leur comportement de basculement via JavaScript et ajoutez .btn-group-toggle
au style le <input>
s dans vos boutons. Notez que vous pouvez créer des boutons alimentés par une seule entrée ou des groupes d'entre eux.
L'état coché de ces boutons n'est mis à jour que via click
un événement sur le bouton. Si vous utilisez une autre méthode pour mettre à jour l'entrée, par exemple, avec <input type="reset">
ou en appliquant manuellement la propriété de l'entrée, vous checked
devrez activer manuellement..active
<label>
Notez que les boutons pré-cochés nécessitent que vous ajoutiez manuellement la .active
classe au fichier <label>
.
<div class="btn-group-toggle" data-toggle="buttons">
<label class="btn btn-secondary active">
<input type="checkbox" checked autocomplete="off"> Checked
</label>
</div>
<div class="btn-group btn-group-toggle" data-toggle="buttons">
<label class="btn btn-secondary active">
<input type="radio" name="options" id="option1" autocomplete="off" checked> Active
</label>
<label class="btn btn-secondary">
<input type="radio" name="options" id="option2" autocomplete="off"> Radio
</label>
<label class="btn btn-secondary">
<input type="radio" name="options" id="option3" autocomplete="off"> Radio
</label>
</div>
Méthode | La description |
---|---|
$().button('toggle') |
Bascule l'état de poussée. Donne au bouton l'apparence qu'il a été activé. |
$().button('dispose') |
Détruit le bouton d'un élément. |