Staram się podążać za bardzo podstawowym przykładem. Korzystając ze strony początkowej i systemu siatki , miałem nadzieję, że:
<div class="row">
<div class="span12">
<h1>Bootstrap starter template</h1>
<p>Example text.</p>
</div>
</div>
... tworzyłby wyśrodkowany tekst.
Jednak nadal pojawia się po lewej stronie. Co ja robię źle?
<center>
jest przestarzałe, na rzecztext-align: center
której, nawiasem mówiąc, jest dokładnie tym, co.text-center
otacza klasa bootstrap .Odpowiedzi:
Dotyczy to Centrowania tekstu (o co chodziło w pytaniu )
W przypadku innych rodzajów treści zobacz odpowiedź Flaviena .
Aktualizacja: Bootstrap 2.3.0+ Odpowiedź
Oryginalna odpowiedź dotyczyła wczesnej wersji bootstrap. Począwszy od bootstrap 2.3.0, możesz po prostu dać div klasę
.text-center
.Oryginalna odpowiedź (wcześniejsza niż 2.3.0)
Musisz zdefiniować jedną z dwóch klas
row
lubspan12
za pomocątext-align: center
. Zobacz http://jsfiddle.net/xKSUH/ lub http://jsfiddle.net/xKSUH/1/źródło
text-align: center
nie jest domyślne dla tych klas. Zazwyczaj wartością domyślną jestleft
wyrównanie..pagination-centered
działa również: P oszczędza naciśnięcie klawisza dodawania kolejnej klasy.pagination-centered
wymaga dodania kolejnej klasy do HTML. Moja odpowiedź w wersji wcześniejszej niż 2.3.0 wymaga tylko rozwinięcia definicji właściwości klasy, która już tam jest. Ponadto, jeśli spojrzysz na komentarze do odpowiedzi za pomocąpagination-centered
, znajdziesz pewne zastrzeżenia i ostrzeżenia z tym związane. Ale jeśli to działa w twoim przypadku - przejdź do tego! :-)UWAGA: zostało to usunięte w Bootstrap 3 .
Przed uruchomieniem 3 można użyć klasy CSS w
pagination-centered
następujący sposób:Klasa
pagination-centered
jest już w bootstrap.css (lub bootstrap.min.css) i ma jedyną regułę:Z Bootstrap 2.3.0. po prostu użyj klasy
text-center
źródło
.text-center
z elementu nadrzędnego jest poprawnym rozwiązaniem dla tej wersji.Chyba większość ludzi tutaj szuka sposobu na wyśrodkowanie całości,
div
a nie tylko tekstu (co jest banalne…).Drugim sposobem (zamiast użycia text-align: center) wyśrodkowania rzeczy w HTML jest posiadanie elementu o stałej szerokości i automatycznym marginesie (po lewej i po prawej). W przypadku Bootstrap styl marginesów automatycznych definiujących styl to klasa „kontener”.
Spójrz tutaj na skrzypce: http://jsfiddle.net/D2RLR/7788/
źródło
col-*offset-*
. na przykład<div class="col-10 offset-1">
lub<div class="col-8 offset-2">
Aktualizacja 2019 - Bootstrap 4
„Wyśrodkowana zawartość” może oznaczać wiele różnych rzeczy, a centrowanie Bootstrap bardzo się zmieniło od czasu pierwszego postu.
Centrum poziome
Bootstrap 3
text-center
służy dodisplay:inline
elementówcenter-block
do centrowaniadisplay:block
elementówcol-*offset-*
do centrowania kolumn siatkiDemo Bootstrap 3 Poziome centrowanie
Bootstrap 4
text-center
jest nadal używany dodisplay:inline
elementówmx-auto
zastępuje elementycenter-block
środkowedisplay:block
offset-*
lubmx-auto
może być użyty do wyśrodkowania kolumn siatkijustify-content-center
wrow
może być również używany do centrumcol-*
mx-auto
(marginesy automatycznego oś x) będzie koncentrowaćdisplay:block
lubdisplay:flex
elementów, które mają określoną szerokość , (%
,vw
,px
itp ..). Flexbox jest domyślnie używany w kolumnach siatki, więc istnieją również różne metody centrowania Flexbox.Demo Bootstrap 4 Poziome centrowanie
Centrum pionowe
Teraz, gdy Bootstrap 4 jest domyślnie Flexbox, istnieje wiele różnych podejść do wyrównania w pionie za pomocą: auto-marginesów , narzędzi Flexbox lub narzędzi wyświetlania wraz z narzędziami wyrównania pionowego . Na początku „narzędzia do wyrównywania w pionie” wydają się oczywiste, ale działają one tylko z wbudowanymi i tabelowymi elementami wyświetlającymi. Oto niektóre opcje centrowania pionowego Bootstrap 4.
1 - Środek pionowy przy użyciu automatycznych marginesów:
Innym sposobem na wyśrodkowanie w pionie jest użycie
my-auto
. Spowoduje to wyśrodkowanie elementu w jego kontenerze. Na przykład ustawiah-100
wiersz na pełną wysokość imy-auto
wyśrodkujecol-sm-12
kolumnę pionowo .Pionowe centrum Korzystanie Auto Marginesy Demo
my-auto
reprezentuje marginesy na pionowej osi y i jest równoważny:2 - Centrum pionowe z Flexbox:
Ponieważ Bootstrap 4
.row
jest terazdisplay:flex
, możesz po prostu użyćalign-self-center
dowolnej kolumny, aby wyśrodkować ją pionowo ...lub użyj
align-items-center
całości,.row
aby wyśrodkować w pionie wszystkiecol-*
w rzędzie ...Demonstracja pionowych środkowych kolumn o różnych wysokościach
3 - Środek pionowy za pomocą wyświetlaczy:
Bootstrap 4 ma narzędzi z ekranu , który może być używany do
display:table
,display:table-cell
,display:inline
, etc .. Mogą one być stosowane z pionowych utils wyrównanie , aby wyrównać inline inline bloku lub elementy komórka tabeli.Centrum w pionie za pomocą narzędzia Display Demo
źródło
.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 ma
.center-block
klasę do centrowania div. Zobacz: http://getbootstrap.com/css/#helper-classes-center .Lub, jak już powiedzieli inni, użyj
.text-center
klasy do wyśrodkowania tekstu.źródło
Najlepszym sposobem na to jest zdefiniowanie stylu css:
Następnie tam, gdzie potrzebujesz wycentrowanego tekstu, dodajesz go w następujący sposób:
lub jeśli chcesz, aby znacznik p był wyśrodkowany:
Im mniej wbudowane css, tym lepiej.
źródło
Klasa .show-grid stosuje tekst wyrównany do środka w przykładzie w łączu.
Zawsze możesz dodać
style="text-align:center"
do div wiersza lub innej klasy, jak sądzę.źródło
W lutym 2013 roku w niektórych przypadkach dodałem klasę „wyśrodkowaną” do div „span”:
i do CSS:
Powodem tego jest to, że div span * div zostaje przesunięty w lewo, a technika centrowania „auto margin” działa tylko wtedy, gdy div nie jest floated.
Demo (na JSFiddle): http://jsfiddle.net/5RpSh/8/embedded/result/
JSFiddle: http://jsfiddle.net/5RpSh/8/
źródło
Jeśli używasz Bootstrap 3, ma on również wbudowaną klasę CSS o nazwie .text-center . To jest to czego chcesz.
Zobacz przykład w jsfiddle. http://jsfiddle.net/ucheng/Q4Fue/
źródło
Bootstrap 2.3 ma
text-center
klasę.źródło
Z mojej strony definiuję nowe
CSS
style gotowe do użycia i łatwe do zapamiętania:Czy to dobry pomysł? Czy jest na to jakaś dobra praktyka?
źródło
span12
i tym podobnymiJeśli używasz Bootstrap 2.0+
Może to spowodować, że div będzie wyśrodkowany na stronie.
źródło
Każda klasa narzędzia do wyrównywania tekstu załatwi sprawę. Bootstrap od dłuższego czasu używa
.text-center
klasy do centrowania tekstu.Lub możesz stworzyć własne narzędzia. Niektóre odmiany, które widziałem przez lata:
źródło
Musisz dostosować za pomocą
.span
.Przykład:
źródło
Moją preferowaną metodą centrowania bloków informacji przy jednoczesnym zachowaniu responsywności (kompatybilność z urządzeniami mobilnymi) jest umieszczenie dwóch pustych elementów
span1
div przed i po treści, którą chcesz wyśrodkować.źródło
W przypadku Bootstrap w wersji 3.1.1 i wyższej najlepszą klasą do centrowania zawartości jest
.center-block
klasa pomocnicza.źródło
Nie należy używać płynu w pojemniku w głównym.
źródło
centered
kodzie masz klasę, która spowoduje zamieszanieBlok środkowy jest również opcją nie wymienioną w powyższych odpowiedziach
Cała klasa
center-block
robi , to powiedzieć elementowi, aby miał margines 0 auto, auto to lewy / prawy margines. Jednakże, chyba że klasa text-center lub css text-align: center; jest ustawiony na elemencie nadrzędnym, element nie zna punktu, od którego należy wykonać to automatyczne obliczanie, więc nie będzie się centrował zgodnie z oczekiwaniami.Tak więc centrum tekstowe jest lepszą opcją.
źródło
Możesz użyć dowolnego z poniższych typów
text-center
.style = "text-align:center"
.Użyj przesunięcia kolumny:
Przykład:
<div class="col-md-offset-6 col-md-12"></div>
źródło
Stworzyłem tę klasę, aby zachować wyśrodkowanie niezależnie od rozmiaru ekranu, zachowując jednocześnie responsywne funkcje:
źródło
Po prostu użyj klasy, centrum tekstowego, dla wybranego div lub tagu. Myślę, że może działać dobrze. Jest to klasa Bootstrap dla centrum wyrównywania tekstu.
Oto kilka klas wyrównania tekstu Bootstrap:
źródło
Próbowałem na dwa sposoby i dobrze działało centrowanie div. Oba sposoby wyrównają div na wszystkich ekranach.
Sposób 1: Używanie push:
Sposób 2: Korzystanie z przesunięcia:
Wynik:
Wyjaśnienie
Bootstrap wyznaczy po lewej stronie pierwszą kolumnę określonego zajętości ekranu. Jeśli użyjemy przesunięcia lub przesunięcia, kolumna „ta” zostanie przesunięta o „te” wiele kolumn. Chociaż napotkałem pewne problemy w zakresie reakcji offsetu, push był niesamowity.
źródło
Aktualizacja 2018:
W Bootstrap 4.1.3 zawartość można wyśrodkować za pomocą klasy
mx-auto
.Odniesienie: https://getbootstrap.com/docs/4.1/utilities/spacing/#horizontal-centering
źródło