Es gibt zwei Ansätze, um eine Spalte in Bootstrap 3 zu zentrieren:
Ansatz 1 (Offsets):
Der erste Ansatz verwendet Bootstraps eigene Offset-Klassen, daher ist keine Änderung im Markup und kein zusätzliches CSS erforderlich. Der Schlüssel ist, einen Offset festzulegen, der der Hälfte der verbleibenden Größe der Zeile entspricht. Zum Beispiel würde eine Spalte der Größe 2 zentriert, indem ein Offset von 5 hinzugefügt wird, das ist (12-2)/2
.
Im Markup würde das so aussehen:
Nun, es gibt einen offensichtlichen Nachteil bei dieser Methode. Sie funktioniert nur für gerade Spaltengrößen, also nur .col-X-2
, .col-X-4
, col-X-6
, col-X-8
und col-X-10
werden unterstützt.
Ansatz 2 (das alte margin:auto
)
Sie können beliebige Spaltengrößen zentrieren, indem Sie die bewährte Technik margin: 0 auto;
verwenden. Sie müssen sich nur um das Floating kümmern, das vom Rastersystem von Bootstrap hinzugefügt wird. Ich empfehle das Definieren einer benutzerdefinierten CSS-Klasse wie folgt:
.col-centered{
float: none;
margin: 0 auto;
}
Jetzt können Sie es zu jeder Spaltengröße bei jeder Bildschirmgröße hinzufügen, und es wird nahtlos mit dem responsiven Layout von Bootstrap funktionieren:
Hinweis: Mit beiden Techniken könnten Sie das .row
-Element überspringen und die Spalte in einem .container
zentriert haben, aber Sie würden einen minimalen Unterschied in der tatsächlichen Spaltengröße aufgrund der Polsterung in der Containerklasse bemerken.
Update:
Seit v3.0.1 hat Bootstrap eine integrierte Klasse namens center-block
, die margin: 0 auto
verwendet, aber float:none
fehlt, Sie können das in Ihr CSS hinzufügen, um es mit dem Rastersystem funktionieren zu lassen.