Spec-Zone.ru › CSS

Свойство CSS `column-fill`

Базовая поддержка Широко доступно

Эта возможность хорошо зарекомендовала себя и работает на многих устройствах и в разных версиях браузеров. Она доступна во всех браузерах с марта 2017 года.

Свойство column-fill CSS управляет распределением содержимого элемента при разделении на колонки.

Попробуйте

column-fill: auto;
column-fill: balance;
<section id="default-example">
  <p id="example-element">
    London. Michaelmas term lately over, and the Lord Chancellor sitting in
    Lincoln's Inn Hall. Implacable November weather.
  </p>
</section>
#example-element {
  width: 100%;
  height: 90%;
  columns: 3;
  text-align: left;
}

Синтаксис

/* Keyword values */
column-fill: auto;
column-fill: balance;

/* Global values */
column-fill: inherit;
column-fill: initial;
column-fill: revert;
column-fill: revert-layer;
column-fill: unset;

Значения

Для этого свойства задаётся одно из следующих ключевых слов:

auto
Колонки заполняются последовательно. Содержимое занимает только необходимое ему пространство, поэтому некоторые колонки могут остаться пустыми.
balance
Содержимое равномерно распределяется между колонками. Во фрагментированных контекстах, таких как постраничные медиа, равномерно распределяется только последний фрагмент. Поэтому в постраничных медиа равномерно распределяется только последняя страница. Это значение используется по умолчанию.

Спецификация определяет значение balance-all, при котором содержимое равномерно распределяется между колонками во фрагментированных контекстах, таких как постраничные медиа. Это значение пока не поддерживается ни одним браузером.

Формальное определение

Исходное значение balance
Применяется к много колоночным элементам
Наследуется нет
Вычисленное значение как задано
Тип анимации дискретный

Формальный синтаксис

column-fill = 
  auto |
  balance

Примеры

Равномерное распределение содержимого по колонкам

HTML

<p class="fill-auto">
  This paragraph fills columns one at a time. Since all of the text can fit in
  the first column, the others are empty.
</p>

<p class="fill-balance">
  This paragraph attempts to balance the amount of content in each column.
</p>

CSS

p {
  height: 7em;
  background: #ffff99;
  columns: 3;
  column-rule: 1px solid;
}

p.fill-auto {
  column-fill: auto;
}

p.fill-balance {
  column-fill: balance;
}

Результат

Спецификации

Спецификация
Модуль многоколоночной компоновки CSS, уровень 1
# cf

Совместимость с браузерами

Настольные Мобильные
Chrome Edge Firefox Opera Safari Chrome для Android Firefox для Android Opera для Android Safari на iOS Samsung Internet WebView для Android WebView на iOS
column-fill
50
12
52
17–74
37
9
8
50
52
17–79
37
9
8
5.0
50
9
8
auto
50
12
17
37
8
50
17
37
8
5.0
50
8
balance
50
12
17
37
8
50
17
37
8
5.0
50
8

Предупреждение: При использовании column-fill в разных браузерах возникают проблемы взаимодействия и ошибки из-за нерешённых вопросов в спецификации.

В частности, при использовании column-fill: auto для последовательного заполнения колонок Chrome учитывает это свойство только в том случае, если для много колоночного контейнера задан размер по блочной оси (например, высота при горизонтальном режиме письма). Firefox всегда учитывает это свойство, поэтому, если размер не задан, всё содержимое помещается в первую колонку.

См. также

  • Узнайте: многоколоночная компоновка
  • column-count
  • column-width

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/column-fill

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API