css властивість break-before
Властивість break-before визначає, як розбиття сторінок або стовпців повинно вести себе перед показом контейнера. Якщо контейнер не сформовано, властивість ігнорується.
Більш конкретно, властивість дозволяє визначити, чи має місце перерва перед сформованим контейнером, і який тип розбивки (лінії) має бути.
Кожна можлива точка перерви (інакше кажучи, межа кожного елемента) залежить від трьох властивостей: значення break-after, значення break-before та значення break-inside.
Щоб визначити, чи необхідно зробити перерву між колонками, застосовуються наступні правила:
- Якщо будь-яке з трьох потрібних значень є примусовим значенням переривання (
always, left, right, page, column, абоregion), воно має перевагу. Якщо більше ніж одне значень робить перерву, то береться один елемент, який являється останнім у потоці (тобто, значення break-before має перевагу над значеннямbreak-after, яке самостійно має перевагу надbreak-inside) - Якщо будь-яке з трьох потрібних значень уникає перерви (
avoid, avoid-page, avoid-region, avoid-column), перерва не буде застосована в потрібному місці.
| Нотатка: | Браузери WebKit і Blink не підтримують цю властивість, але деякі з них мають нестандартні властивості |
| Порада: | Також зауважте, що на момент написання більшість браузерів підтримують властивість у специфікації CSS 2.1, але не останню специфікацію |
Синтаксис
break-before: auto | avoid | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region;
Властивість break-before може отримувати 12 значень:
autoНi вказує, ні забороняє переривання сторінки або стовпця.
avoidУникання переривання сторінки після основного контейнера.
avoid-pageУникання переривання сторінки після основного контейнера.
pageЗавжди примусове переривання сторінки після основного контейнера.
leftЗмушує одне або два розбиття сторінки після основного контейнера, щоб наступна сторінка була відформатована як ліва.
rightЗмушує одне або два розбиття сторінки після основного контейнера, щоб наступна сторінка була відформатована як права.
rectoЗмушує одне або два розбиття сторінки після основного контейнера, щоб наступна сторінка була відформатована або як ліва сторінка, або права сторінка, залежно від того, яка сторінка є другою.
versoЗмушує одне або два розбиття сторінки після основного контейнера, щоб наступна сторінка була відформатована або як ліва сторінка, або права сторінка, залежно від того, яка сторінка є першою.
avoid-columnУникання переривання колонки після основного контейнера.
columnЗавжди примусове переривання колонки після основного контейнера.
avoid-regionУникання переривання області після основного контейнера.
regionЗавжди примусове переривання області після основного контейнера.
| Значення без задання: | auto |
|---|---|
| Наслідує: | Ні |
| Анімується: | Так |
| JavaScript синтаксис: | object.style.pageBreakBefore = ''; |
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| Basic support | 50.0 |
10.0 |
65.0 |
Не підтримується |
37.0 |
12.0 |
| column | Full support |
10.0 |
Не підтримується |
Full support |
Full support |
12.0 |
| avoid-column | Не підтримується |
10.0 |
Не підтримується |
Не підтримується |
Не підтримується |
12.0 |
| always | Не підтримується |
Не підтримується |
Не підтримується |
Не підтримується |
Не підтримується |
Не підтримується |
| Переглядач | |||
|---|---|---|---|
| Basic support | 50.0 |
65.0 |
Не підтримується |
| column | Full support |
Не підтримується |
Не підтримується |
| avoid-column | Не підтримується |
Не підтримується |
Full support |
| always | Не підтримується |
Не підтримується |
Не підтримується |
Мобільних переглядачів ще не додано.
Приклади
Значення у дії
Приклад використання
Синтаксис властивості
p {
break-before: auto;
break-before: avoid;
break-before: always;
break-before: all;
break-before: avoid-page;
break-before: page;
break-before: left;
break-before: right;
break-before: recto;
break-before: verso;
break-before: avoid-column;
break-before: column;
break-before: avoid-region;
break-before: region;
break-before: inherit;
break-before: initial;
break-before: unset;
}
