CSS свойство flex-basis

Свойство flex-basis определяет начальный базовый размер флекс-элемента.

Если нет флекс-элементов, свойство flex-basis не будет иметь эффекта.

Значение по умолчанию auto
Применяется К флекс-элементам, в том числе в потоке псевдоэлементов.
Наследуется Нет
Анимируемое Да. Элементы анимируемы.
Версия CSS3
DOM синтаксис object.style.flexBasis = "100px";

Синтаксис

flex-basis: number | auto | initial | inherit;

Пример

<!DOCTYPE html>
<html>
  <head>
    <title>Заголовок документа</title>
    <style>
      .box {
      width: 300px;
      height: 80px;
      border: 1px solid #666;
      display: -webkit-flex; /* Safari */
      display: flex;
      }
      .box div {
      -webkit-flex-grow: 0; /* Safari 6.1+ */
      -webkit-flex-shrink: 0; /* Safari 6.1+ */
      -webkit-flex-basis: 50px; /* Safari 6.1+ */
      flex-grow: 0;
      flex-shrink: 0;
      flex-basis: 40px;
      }
      .box div:nth-of-type(2) {
      -webkit-flex-basis: 150px; /* Safari 6.1+ */
      flex-basis: 140px;
      }
    </style>
  </head>
  <body>
    <h2>Пример свойства flex-basis</h2>
    <div class="box">
      <div style="background-color: #eee;">40px</div>
      <div style="background-color: #1c87c9;">140px</div>
      <div style="background-color: #8ebf42;">40px</div>
      <div style="background-color: #ccc;">40px</div>
      <div style="background-color: #666;">40px</div>
    </div>
  </body>
</html>

Значения

Значение Описание
number Указывает ширину элемента при помощи "auto", "inherit" или чисел, после которых следуют "%", "px", "em" и т. д.
auto Значение по умолчанию. Если ширина элемента не установлена, она будет соответствовать ширине контента.
initial Устанавливает свойство в значение по умолчанию.
inherit Значение элемента наследуется от родительского элемента.

Поддержка браузера

chrome firefox safari opera
29.0+
21-28 -webkit-
28.0+ 9.0+
6.1-8.0 -webkit-
12.1+

Практикуйте свои знания

Что такое свойство 'flex-basis' в CSS?
Считаете ли это полезным?