Właściwość CSSFlexbox

flex-basis

Ustala początkowy rozmiar elementu flex na osi głównej, zanim zacznie rosnąć lub się kurczyć.

Wartość domyślna
auto
Dziedziczona
Nie
Animowalna
tak, jako długość lub procent
Dotyczy
elementy flex
JavaScript
element.style.flexBasis = "200px"
Na tej stronie

Przykład

#
CSS
.columns {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.columns > * {
  flex: 1 1 180px;
}
Podgląd

Definicja i zastosowanie

#

Właściwość flex-basis określa punkt wyjścia dla rozmiaru elementu na osi głównej. Najpierw każdy element dostaje swój rozmiar bazowy, a dopiero potem wolne lub brakujące miejsce jest rozdzielane według flex-grow i flex-shrink.

Przy auto element patrzy na swoje width (lub height w kolumnie), a jeśli go nie ma, na rozmiar treści. Wartość 0 oznacza start od zera, dzięki czemu przy równym flex-grow elementy mają dokładnie równe rozmiary.

W kontenerze z flex-direction: column flex-basis dotyczy wysokości, a nie szerokości.

Składnia

#
Składnia
flex-basis: auto | content | <długość> | <procent>;

Wartości

#
  • auto

    Punktem wyjścia jest treść, więc elementy mają różne szerokości.
  • 0

    Wszystkie startują od zera, więc przy równym grow są jednakowo szerokie.
  • 100px

    <długość>

    Każdy element startuje od 100px i dzieli resztę miejsca.
  • 50%

    <procent>

    Rozmiar bazowy to połowa kontenera, więc elementy muszą się skurczyć.

Wartości w praktyce

#

auto

Punktem wyjścia jest treść, więc elementy mają różne szerokości.
.demo .box { flex-basis: auto; }

0

Wszystkie startują od zera, więc przy równym grow są jednakowo szerokie.
.demo .box { flex-basis: 0; }

100px

Każdy element startuje od 100px i dzieli resztę miejsca.
.demo .box { flex-basis: 100px; }

50%

Rozmiar bazowy to połowa kontenera, więc elementy muszą się skurczyć.
.demo .box { flex-basis: 50%; }

Obsługa przeglądarek

#

Szeroko dostępne

Działa we wszystkich nowoczesnych przeglądarkach, także na telefonach. Możesz używać bez obaw.

  • Chrome
  • Edge
  • Firefox
  • Safari

Dobre praktyki

#
  • Zapis flex: 1 1 200px to prosty sposób na kolumny, które zawijają się, gdy robi się za wąsko.
  • Gdy ustawisz i width, i flex-basis, pierwszeństwo ma flex-basis (poza wartością auto).

Powiązane hasła

#

Widzisz błąd albo brakuje przykładu? Napisz do nas.