Flex Bootstrap 5
- Poprzednia strona Praktyczne narzędzia BS5
- Następna strona Formularze BS5
ramie elastyczne
Największa różnica między Bootstrap 3 a Bootstrap 4 & 5 polega na tym, że Bootstrap 5 używa teraz flexbox zamiast float do obsługi układu.
moduł elastycznego ramienia, który pozwala na łatwiejsze projektowanie elastycznych struktur responsywnych bez użycia float lub pozycjonowania.
Jeśli nie znasz flex, możesz nauczyć się tego w naszym Kurs CSS Flexbox naucz się.
Komentarz:Wersje IE9 i wcześniejsze nie obsługują Flexbox.
Komentarz:Jeśli potrzebujesz obsługi IE8-9, użyj Bootstrap 3. Jest to najbardziej stabilna wersja Bootstrap, zespół wciąż go wspiera, aby naprawiać kluczowe błędy i wprowadzać zmiany w dokumentacji. Jednak nie będą wprowadzane żadne nowe funkcje.
Przykład
Aby utworzyć kontener flexbox i przekształcić bezpośrednie elementy potomne w elementy flex, użyj d-flex
Klasa:
<div class="d-flex p-3 bg-secondary text-white"> <div class="p-2 bg-info">Element elastyczny 1</div> <div class="p-2 bg-warning">Element elastyczny 2</div> <div class="p-2 bg-primary">Element elastyczny 3</div> </div>
Przykład
Aby utworzyć kontener wiersza wewnętrznego flexbox, użyj d-inline-flex
Klasa:
<div class="d-inline-flex p-3 bg-secondary text-white"> <div class="p-2 bg-info">Element elastyczny 1</div> <div class="p-2 bg-warning">Element elastyczny 2</div> <div class="p-2 bg-primary">Element elastyczny 3</div> </div>
Kierunek poziomy
użyj .flex-row
Wyświetlać elementy flex w poziomie (obok siebie). Jest to ustawienie domyślne.
Wskazówka:używając .flex-row-reverse
Można wyprostować je w kierunku prawym poziomym:
Przykład
<div class="d-flex flex-row bg-secondary"> <div class="p-2 bg-info">Element elastyczny 1</div> <div class="p-2 bg-warning">Element elastyczny 2</div> <div class="p-2 bg-primary">Element elastyczny 3</div> </div> <div class="d-flex flex-row-reverse bg-secondary"> <div class="p-2 bg-info">Element elastyczny 1</div> <div class="p-2 bg-warning">Element elastyczny 2</div> <div class="p-2 bg-primary">Element elastyczny 3</div> </div>
Kierunek pionowy
użyj .flex-column
Wyświetlać elementy flex w pionie (zamiast siebie nawzajem), lub użyć .flex-column-reverse
Odwrócić kierunek pionowy:
Przykład
<div class="d-flex flex-column"> <div class="p-2 bg-info">Element elastyczny 1</div> <div class="p-2 bg-warning">Element elastyczny 2</div> <div class="p-2 bg-primary">Element elastyczny 3</div> </div> <div class="d-flex flex-column-reverse"> <div class="p-2 bg-info">Element elastyczny 1</div> <div class="p-2 bg-warning">Element elastyczny 2</div> <div class="p-2 bg-primary">Element elastyczny 3</div> </div>
Wyśrodkuj zawartość
używając .justify-content-*
Klasa może zmienić sposób wyrównania elementów elastycznych. Dostępne klasy to:
start
(domyślnie)end
center
between
around
Przykład
<div class="d-flex justify-content-start">...</div> <div class="d-flex justify-content-end">...</div> <div class="d-flex justify-content-center">...</div> <div class="d-flex justify-content-between">...</div> <div class="d-flex justify-content-around">...</div>
Równa szerokość
używając na elemencie flex .flex-fill
Można zmusić je do równego szerokości:
Przykład
<div class="d-flex"> <div class="p-2 bg-info flex-fill">Elastyczny element 1</div> <div class="p-2 bg-warning flex-fill">Elastyczny element 2</div> <div class="p-2 bg-primary flex-fill">Elastyczny element 3</div> </div>
Rozciągać
używając na elemencie flex .flex-grow-1
Można zająć dodatkowe miejsce. W poniższym przykładzie, pierwsze dwa elementy flex zajmują niezbędne miejsce, a ostatni element zajmuje pozostałą dostępną przestrzeń:
Przykład
<div class="d-flex"> <div class="p-2 bg-info">Element elastyczny 1</div> <div class="p-2 bg-warning">Element elastyczny 2</div> <div class="p-2 bg-primary flex-grow-1">Element elastyczny 3</div> </div>
Wskazówka:używając na elemencie flex .flex-shrink-1
może się kurczyć, jeśli to konieczne.
Kolejność
używając .order
klasy mogą zmieniać wizualną kolejność konkretnego elementu flex. Dostępne klasy od 0 do 5, gdzie najniższa liczba ma najwyższy priorytet (order-1 jest przed order-2, itd.):
Przykład
<div class="d-flex bg-secondary"> <div class="p-2 bg-info order-3">Element elastyczny 1</div> <div class="p-2 bg-warning order-2">Element elastyczny 2</div> <div class="p-2 bg-primary order-1">Element elastyczny 3</div> </div>
automatycznych marginesów zewnętrznych
używając .me-auto
(przesuwa projekt w prawo) lub użyć .ms-auto
(przesuwa projekt w lewo) Można łatwo dodać automatyczne marginesy do elementów flex:
Przykład
<div class="d-flex bg-secondary"> <div class="p-2 ms-auto bg-info">Element elastyczny 1</div> <div class="p-2 bg-warning">Element elastyczny 2</div> <div class="p-2 bg-primary">Element elastyczny 3</div> </div> <div class="d-flex bg-secondary"> <div class="p-2 bg-info">Element elastyczny 1</div> <div class="p-2 bg-warning">Element elastyczny 2</div> <div class="p-2 ms-auto bg-primary">Element elastyczny 3</div> </div>
Przełącz wiersze
poprzez .flex-nowrap
domyślnie,.flex-wrap
lub .flex-wrap-reverse
kontrolują, jak elementy flex są opakowywane w kontenerze flex.
Przykład
<div class="d-flex flex-wrap">..</div> <div class="d-flex flex-wrap-reverse">..</div> <div class="d-flex flex-nowrap">..</div>
Wyśrodkuj zawartość
użyj .ustawia-zawartość-*
Klasy kontrolują verticalne wyważenie elementów elastycznych. Dostępne klasy to:
.ustawia zawartość na początek
(domyślnie).ustawia zawartość na koniec
.centeruje zawartość
.align-content-between
.align-content-around
.align-content-stretch
Komentarz:Te klasy nie mają wpływu na wiersz jednorzędowy.
Kliknij poniższy przycisk, aby zobaczyć różnice między pięcioma klasami: zmieniając wertykalne wyważanie elementów elastycznych w oknie instancji.
Przykład
<div class="d-flex flex-wrap align-content-start">..</div> <div class="d-flex flex-wrap align-content-end">..</div> <div class="d-flex flex-wrap align-content-center">..</div> <div class="d-flex flex-wrap align-content-around">..</div> <div class="d-flex flex-wrap align-content-stretch">..</div>
Wyśrodkuj elementy
użyj .align-items-*
klasa kontrolnawiersz jednorzędowywertykalne wyważanie elastycznych elementów. Dostępne klasy to:
.align-items-start
.align-items-end
.align-items-center
.align-items-baseline
.align-items-stretch
(domyślnie)
Kliknij poniższy przycisk, aby zobaczyć różnice między pięcioma klasami:
Przykład
<div class="d-flex align-items-start">..</div> <div class="d-flex align-items-end">..</div> <div class="d-flex align-items-center">..</div> <div class="d-flex align-items-baseline">..</div> <div class="d-flex align-items-stretch">..</div>
samowyważenie
użyj .align-self-*
klasa kontrolnaokreśla elastyczne elementysposób wertykalnego wyważania.
.align-self-start
.align-self-end
.align-self-center
.align-self-baseline
.align-self-stretch
(domyślnie)
Kliknij poniższy przycisk, aby zobaczyć różnice między pięcioma klasami:
Przykład
<div class="d-flex bg-light" style="height:150px"> <div class="p-2 border">Element elastyczny 1</div> <div class="p-2 border align-self-start">Element elastyczny 2</div> <div class="p-2 border">Element elastyczny 3</div> </div>
Elastyczne klasy odpowiedzi
Wszystkie klasy elastyczne mają dodatkowe klasy odpowiedzi, co ułatwia ustawianie konkretnych klas flex na określonych rozmiarach ekranu.
* symbol można zastąpić sm, md, lg, xl lub xxl, co oznacza mały, średni, duży, bardzo duży i extra duży ekran.
Szukaj konkretnych klas elastycznych ..
Klasa | Opis | Przykład |
---|---|---|
Kontener elastyczny | ||
.d-*-flex |
Utwórz kontener flexbox dla różnych ekranów. | Spróbuj |
.d-*-inline-flex |
Utwórz kontener flexbox wiersza dla różnych ekranów. | Spróbuj |
Kierunek | ||
.flex-*-row |
Pokazuj elastyczne elementy poziomo na różnych ekranach. | Spróbuj |
.flex-*-row-reverse |
Pokazuj elastyczne elementy poziomo i w prawo wycentrowane na różnych ekranach. | Spróbuj |
.flex-*-column |
Pokazuj elastyczne elementy wertykalnie na różnych ekranach. | Spróbuj |
.flex-*-column-reverse |
Pokazuj elastyczne elementy wertykalnie w przeciwnym kierunku na różnych ekranach. | Spróbuj |
Zawartość w rzędzie | ||
.justify-content-*-start |
Pokazuj elastyczne elementy od początku (w lewo wycentrowane) na różnych ekranach. | Spróbuj |
.justify-content-*-end |
Pokazuj elastyczne elementy na końcu (w prawo wycentrowane) na różnych ekranach. | Spróbuj |
.justify-content-*-center |
Pokazuj elastyczne elementy w centrum kontenera na różnych ekranach. | Spróbuj |
.justify-content-*-between |
Pokazuj równomiernie elastyczne elementy na różnych ekranach. | Spróbuj |
.justify-content-*-around |
Pokazuj elastyczne elementy 'wokół' na różnych ekranach. | Spróbuj |
Fill / Równa szerokość | ||
.flex-*-fill |
Wymuś równomierne szerokości elastycznych elementów na różnych ekranach. | Spróbuj |
Rozszerzenie | ||
.flex-*-grow-0 |
Nie pozwól, aby elementy się rozszerzały na różnych ekranach. | |
.flex-*-grow-1 |
Rozszerzenie elementów na różnych ekranach. | |
Zmniejszenie | ||
.flex-*-shrink-0 |
Nie pozwól elementom kurczyć się na różnych ekranach. | |
.flex-*-shrink-1 |
Pozwól elementom się kurczyć na różnych ekranach. | |
Kolejność | ||
.order-*-0-12 |
Zmień kolejność od 0 do 12 na małych ekranach. | Spróbuj |
Przełącz wiersze | ||
.flex-*-nowrap |
Nie przełączaj wierszy elementów na różnych ekranach. | Spróbuj |
.flex-*-wrap |
Przełączaj wiersze elementów na różnych ekranach. | Spróbuj |
.flex-*-wrap-reverse |
Odwróć wiersze elementów na różnych ekranach. | Spróbuj |
Wyśrodkuj zawartość | ||
.align-content-*-start |
Wyśrodkuj elementy od początku różnych ekranów. | Spróbuj |
.align-content-*-end |
Wyśrodkuj elementy na końcu różnych ekranów. | Spróbuj |
.align-content-*-center |
Wyśrodkuj elementy w środku różnych ekranów. | Spróbuj |
.align-content-*-around |
Wyśrodkuj elementy wokół różnych ekranów. | Spróbuj |
.align-content-*-stretch |
Rozciągnij elementy na różnych ekranach. | Spróbuj |
Wyśrodkuj elementy | ||
.align-items-*-start |
Wyśrodkuj pojedyncze wiersze od początku różnych ekranów. | Spróbuj |
.align-items-*-end |
Wyśrodkuj pojedyncze wiersze na końcu różnych ekranów. | Spróbuj |
.align-items-*-center |
Wyśrodkuj pojedyncze wiersze w środku różnych ekranów. | Spróbuj |
.align-items-*-baseline |
Wyśrodkuj pojedyncze wiersze na bazie różnych ekranów. | Spróbuj |
.align-items-*-stretch |
Rozciągnij pojedyncze wiersze na różnych ekranach. | Spróbuj |
Wyśrodkuj sam siebie | ||
.align-self-*-start |
Wyśrodkuj elastyczne elementy od początku różnych ekranów. | Spróbuj |
.align-self-*-end |
Wyśrodkuj elastyczne elementy na końcu różnych ekranów. | Spróbuj |
.align-self-*-center |
Wyśrodkuj elastyczne elementy w środku różnych ekranów. | Spróbuj |
.align-self-*-baseline |
Wyśrodkuj elastyczne elementy na bazie różnych ekranów. | Spróbuj |
.align-self-*-stretch |
Rozciągnij elastyczne elementy na różnych ekranach. | Spróbuj |
- Poprzednia strona Praktyczne narzędzia BS5
- Następna strona Formularze BS5