Dans Bootstrap 4, il faut utiliser la text-center
classe pour aligner les blocs en ligne .
REMARQUE: text-align:center;
défini dans une classe personnalisée que vous appliquez à votre élément parent fonctionnera quelle que soit la version de Bootstrap que vous utilisez. Et c'est exactement ce qui .text-center
s'applique.
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
<div class="container">
<div class="row">
<div class="col text-center">
<button class="btn btn-default">Centered button</button>
</div>
</div>
</div>
Si le contenu à centrer est block ou flex (non inline-
), on peut utiliser flexbox pour le centrer:
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
<div class="d-flex justify-content-center">
<button class="btn btn-default">Centered button</button>
</div>
... qui s'applique display: flex; justify-content: center
au parent.
Remarque: ne pas utiliser à la .row.justify-content-center
place de .d-flex.justify-content-center
, car cela .row
applique des marges négatives sur certains intervalles de réactivité, ce qui entraîne des barres de défilement horizontales inattendues (à moins qu'il ne s'agisse d' .row
un enfant direct de .container
, qui applique un remplissage latéral pour contrer la marge négative, sur les intervalles de réactivité corrects). Si vous devez utiliser .row
, pour une raison quelconque, remplacer sa marge et son remplissage par .m-0.p-0
, auquel cas vous vous retrouvez avec à peu près les mêmes styles que .d-flex
.
Remarque importante: La deuxième solution est problématique lorsque le contenu centré (le bouton) dépasse la largeur du parent ( .d-flex
), en particulier lorsque le parent a une largeur de fenêtre, en particulier parce qu'il est impossible de faire défiler horizontalement jusqu'au début du contenu (gauche- plus).
Ne l'utilisez donc pas lorsque le contenu à centrer pourrait devenir plus large que la largeur du parent disponible et que tout le contenu devrait être accessible.