Ich versuche einem sehr einfachen Beispiel zu folgen. Mit der Startseite und dem Rastersystem hatte ich Folgendes gehofft:
<div class="row">
<div class="span12">
<h1>Bootstrap starter template</h1>
<p>Example text.</p>
</div>
</div>
... würde zentrierten Text erzeugen.
Es erscheint jedoch immer noch ganz links. Was mache ich falsch?
<center>
ist veraltet,text-align: center
wofür übrigens genau das ist, was die Bootstrap-Klasse.text-center
umschließt.Antworten:
Dies ist für die Textzentrierung ( worum es bei der Frage ging )
Weitere Arten von Inhalten finden Sie in der Antwort von Flavien .
Update: Bootstrap 2.3.0+ Antwort
Die ursprüngliche Antwort war für eine frühe Version von Bootstrap. Ab Bootstrap 2.3.0 können Sie dem div einfach die Klasse geben
.text-center
.Ursprüngliche Antwort (vor 2.3.0)
Sie müssen eine der beiden Klassen definieren
row
oderspan12
mit atext-align: center
. Siehe http://jsfiddle.net/xKSUH/ oder http://jsfiddle.net/xKSUH/1/quelle
text-align: center
für diese Klassen nicht die Standardeinstellung ist. Normalerweise ist die Standardeinstellung dieleft
Ausrichtung..pagination-centered
funktioniert das auch: P erspart Ihnen den Tastendruck zum Hinzufügen einer weiteren Klasse.pagination-centered
müssen Sie dem HTML eine weitere Klasse hinzufügen. Meine Antwort vor 2.3.0 erfordert nur eine, um die Eigenschaftsdefinition einer bereits vorhandenen Klasse zu erweitern. Wenn Sie sich die Kommentare zur Antwort mit ansehenpagination-centered
, werden Sie auch einige diesbezügliche Einwände und Warnungen finden. Aber wenn es in Ihrem Fall für Sie funktioniert - gehen Sie dazu! :-)HINWEIS: Dies wurde in Bootstrap 3 entfernt .
Vor Bootstrap 3 können Sie die CSS-Klasse folgendermaßen verwenden
pagination-centered
:Die Klasse
pagination-centered
befindet sich bereits in bootstrap.css (oder bootstrap.min.css) und hat die einzige Regel:Mit Bootstrap 2.3.0. benutze einfach class
text-center
quelle
.text-center
auf dem übergeordneten Element ist die richtige Lösung für diese Version.Ich denke, die meisten Leute hier suchen tatsächlich nach dem Weg, das Ganze zu zentrieren
div
und nicht nur den Textinhalt zu zentrieren (was trivial ist…).Die zweite Möglichkeit (anstelle von text-align: center), Dinge in HTML zu zentrieren, besteht darin, ein Element mit einer festen Breite und einem automatischen Rand (links und rechts) zu haben. Bei Bootstrap ist der Stil, der automatische Ränder definiert, die "Container" -Klasse.
Schauen Sie hier nach einer Geige: http://jsfiddle.net/D2RLR/7788/
quelle
col-*offset-*
. zum Beispiel<div class="col-10 offset-1">
oder<div class="col-8 offset-2">
Update 2019 - Bootstrap 4
"Zentrierter Inhalt" kann viele verschiedene Dinge bedeuten, und die Bootstrap-Zentrierung hat sich seit dem ursprünglichen Beitrag stark verändert.
Horizontale Mitte
Bootstrap 3
text-center
wird fürdisplay:inline
Elemente verwendetcenter-block
zum Zentrumdisplay:block
Elementecol-*offset-*
Rasterspalten zentrierenDemo Bootstrap 3 Horizontale Zentrierung
Bootstrap 4
text-center
wird immer noch fürdisplay:inline
Elemente verwendetmx-auto
ersetztcenter-block
die zentralendisplay:block
Elementeoffset-*
odermx-auto
kann zum Zentrieren von Rasterspalten verwendet werdenjustify-content-center
inrow
kann auch zum Zentrieren verwendet werdencol-*
mx-auto
(auto x-Achsen - Ränder) im Mittelpunktdisplay:block
oderdisplay:flex
Elemente , die eine haben definierte Breite , (%
,vw
,px
, etc ..). Flexbox wird standardmäßig für Rasterspalten verwendet, daher gibt es auch verschiedene Flexbox-Zentrierungsmethoden.Demo Bootstrap 4 Horizontale Zentrierung
Vertikales Zentrum
Nun , da Bootstrap 4 FlexBox standardmäßig gibt es viele verschiedene Ansätze für die vertikale Ausrichtung unter Verwendung von : Auto-Margen , FlexBox utils oder die Anzeige utils zusammen mit vertikalen align utils . Auf den ersten Blick scheint "Vertical Align Utils" offensichtlich, aber diese funktionieren nur mit Inline- und Tabellenanzeigeelementen. Hier sind einige vertikale Zentrierungsoptionen für Bootstrap 4 aufgeführt.
1 - Vertikale Mitte mit automatischen Rändern:
Eine andere Möglichkeit, vertikal zu zentrieren, ist die Verwendung
my-auto
. Dadurch wird das Element in seinem Container zentriert. Zum Beispielh-100
macht die Zeile die volle Höhe undmy-auto
zentriert diecol-sm-12
Spalte vertikal .Vertikales Zentrum mit Auto Margins Demo
my-auto
stellt Ränder auf der vertikalen y-Achse dar und entspricht:2 - Vertikales Zentrum mit Flexbox:
Da Bootstrap 4
.row
jetzt istdisplay:flex
, können Sie es einfachalign-self-center
für jede Spalte verwenden, um es vertikal zu zentrieren ...oder verwenden Sie
align-items-center
insgesamt.row
, um allecol-*
in der Reihe vertikal zu zentrieren ...Demo für Spalten mit vertikaler Mitte und unterschiedlicher Höhe
3 - Vertikales Zentrum mit Anzeige-Dienstprogrammen:
Bootstrap 4 weist Anzeige utils , die verwendet werden können für
display:table
,display:table-cell
,display:inline
, etc .. Diese können mit der verwendet werden , den vertikalen Ausrichtung utils auszurichten inline, inline-Block oder Tabellenzellenelementen.Vertikales Zentrum mit Display Utils Demo
quelle
.className-of-inner-div { display: inline-block; text-align: left; padding-top: 25%; padding-bottom: 20%; margin-top: auto; margin-bottom: auto; } .className-of-Grid-column { vertical-align:middle; text-align: center; }
Bootstrap 3.1.1 hat eine
.center-block
Klasse zum Zentrieren von Divs. Siehe: http://getbootstrap.com/css/#helper-classes-center .Oder verwenden Sie, wie andere bereits gesagt haben, die
.text-center
Klasse, um Text zu zentrieren.quelle
Der beste Weg, dies zu tun, besteht darin, einen CSS-Stil zu definieren:
Wo immer Sie zentrierten Text benötigen, fügen Sie ihn folgendermaßen hinzu:
oder wenn Sie nur das p-Tag zentrieren möchten:
Je weniger Inline-CSS Sie verwenden, desto besser.
quelle
Die Klasse .show-grid wendet im Beispiel im Link mittig ausgerichteten Text an.
Sie können jederzeit
style="text-align:center"
zu Ihrer Zeile div oder einer anderen Klasse hinzufügen , denke ich.quelle
Ab Februar 2013 füge ich in einigen Fällen der "span" -Div eine "zentrierte" Klasse hinzu:
und zu CSS:
Der Grund dafür ist, dass die span * divs nach links verschoben werden und die Zentrierungstechnik "Auto Margin" nur funktioniert, wenn das div nicht verschoben wird.
Demo (auf JSFiddle): http://jsfiddle.net/5RpSh/8/embedded/result/
JSFiddle: http://jsfiddle.net/5RpSh/8/
quelle
Wenn Sie Bootstrap 3 verwenden, verfügt es auch über eine integrierte CSS-Klasse mit dem Namen .text-center . Das ist, was du willst.
Bitte sehen Sie das Beispiel in jsfiddle. http://jsfiddle.net/ucheng/Q4Fue/
quelle
Bootstrap 2.3 hat eine
text-center
Klasse.quelle
Auf meiner Seite definiere ich neue
CSS
Stile, die sofort einsatzbereit und leicht zu merken sind:Ist es eine gute Idee? Gibt es dafür eine gute Praxis?
quelle
span12
s und dergleichenWenn Sie Bootstrap 2.0+ verwenden
Dadurch kann das Div auf der Seite zentriert werden.
quelle
Jede Textausrichtungs-Dienstprogrammklasse würde den Trick tun. Bootstrap verwendet seit
.text-center
langer Zeit eine Klasse zum Zentrieren von Text.Oder Sie können Ihre eigenen Dienstprogramme erstellen. Einige Variationen, die ich im Laufe der Jahre gesehen habe:
quelle
Sie müssen sich mit dem einstellen
.span
.Beispiel:
quelle
Meine bevorzugte Methode zum Zentrieren von Informationsblöcken unter Beibehaltung der Reaktionsfähigkeit (Kompatibilität mit Mobilgeräten) besteht darin, zwei leere
span1
Divs vor und nach dem Inhalt zu platzieren, den Sie zentrieren möchten.quelle
Ab Bootstrap Version 3.1.1 ist die Hilfsklasse die beste Klasse zum Zentrieren des Inhalts
.center-block
.quelle
Verwenden Sie keine Behälterflüssigkeit in der Hauptleitung.
quelle
centered
Klasse in Ihrem Code, die viel VerwirrungDer Mittelblock ist auch eine Option, auf die in den obigen Antworten nicht Bezug genommen wird
Die Klasse
center-block
teilt dem Element lediglich mit, dass es einen Rand von 0 auto haben soll, wobei auto der linke / rechte Rand ist. Es sei denn, die Klasse text-center oder css text-align: center; Wenn das Element auf dem übergeordneten Element festgelegt ist, kennt es den Punkt nicht, von dem aus diese automatische Berechnung berechnet werden soll, sodass es sich nicht wie erwartet zentriert.Text-Center ist also eine bessere Option.
quelle
Sie können einen der folgenden Typen verwenden
text-center
.style = "text-align:center"
.Verwenden Sie einen Spaltenversatz:
Beispiel:
<div class="col-md-offset-6 col-md-12"></div>
quelle
Ich habe diese Klasse erstellt, um die Zentrierung unabhängig von der Bildschirmgröße beizubehalten und gleichzeitig die Reaktionsfunktionen beizubehalten:
quelle
Verwenden Sie einfach eine Klasse, ein Textzentrum, für das Div oder Tag, das Sie möchten. Ich denke, es könnte gut funktionieren. Es ist eine Bootstrap-Klasse für das Textausrichtungszentrum.
Hier sind einige Bootstrap-Klassen für die Textausrichtung:
quelle
Ich habe zwei Möglichkeiten ausprobiert, und es hat gut funktioniert, die Div zu zentrieren. In beiden Fällen werden die Divs auf allen Bildschirmen ausgerichtet.
Weg 1: Verwenden von Push:
Weg 2: Offset verwenden:
Ergebnis:
Erläuterung
Bootstrap bezeichnet links die erste Spalte der angegebenen Bildschirmbelegung. Wenn wir Offset oder Push verwenden, wird die Spalte "this" um "diese" vielen Spalten verschoben. Obwohl ich einige Probleme mit der Reaktionsfähigkeit des Offsets hatte, war der Push fantastisch.
quelle
Update 2018:
In Bootstrap 4.1.3 kann der Inhalt mithilfe der Klasse zentriert werden
mx-auto
.Referenz: https://getbootstrap.com/docs/4.1/utilities/spacing/#horizontal-centering
quelle