break-after

La propriété break-after décrit la façon dont la page, la colonne ou la région se fragmente après la boîte générée. S'il n'y a aucune boîte générée, la propriété est ignorée.

Chaque point de rupture éventuel (c'est-à-dire chaque frontière d'élément) est influencé par trois propriétés : la valeur de break-after de l'élément précédent, la valeur de break-before de l'élément suivant et la valeur de break-inside de l'élément englobant.

Pour déterminer si on a une rupture, on applique les règles suivantes :

  1. Si l'une des trois valeurs correspond à une rupture forcée (always, left, right, page, column ou region), cette valeur l'emporte. Si plusieurs valeurs décrivent une rupture forcée, c'est celle de l'élément qui apparaît le plus tard dans le flux qui est prise en compte (autrement dit, break-before l'emporte sur break-after qui l'emporte sur break-inside).
  2. Si l'une des trois valeurs correspond à une valeur visant à éviter une rupture (avoid, avoid-page, avoid-region, avoid-column), aucune rupture ne sera appliquée à cet endroit.

Une fois que les ruptures forcées ont été appliquées, le moteur peut ajouter des ruptures « douces » sauf aux endroits où les propriétés empêchent les ruptures.

Valeur initialeauto
Applicabilitééléments de type bloc
Héritéenon
Médiapaged
Valeur calculéecomme spécifié
Animablenon
Ordre canoniquel'ordre unique et non-ambigu défini par la grammaire formelle

Syntaxe

break-after: auto;
break-after: always;
break-after: left;
break-after: right;
break-after: recto;
break-after: verso;
break-after: page;
break-after: column;
break-after: region;
break-after: avoid;
break-after: avoid-page;
break-after: avoid-column;
break-after: avoid-region;

Valeurs

auto
Valeur initiale qui ne force ni n'interdit de rupture (de page, de colonne ou de région) après la boîte.
always
Force la rupture après la boîte. Cette valeur est synonyme de page et a été conservée pour faciliter la transition depuis la propriété page-break-after (qui forme un sous-ensemble de cette propriété).
avoid
Empêche toute rupture (de page, de colonne ou de région) après la boîte.
left
Force un ou deux saut de page après la boîte de l'élément afin que la prochaine page soit une page gauche.
right
Force un ou deux saut de page après la boîte de l'élément afin que la prochaine page soit une page droite.
page
Force un saut de page après la boîte de l'élément.
column
Force une rupture de colonne de page après la boîte de l'élément.
region
Force une rupture de région après la boîte de l'élément.
recto
Force un ou deux sauts de page après la boîte de l'élément afin que la prochaine page soit une page recto (une page droite pour le sens de lecture gauche à droite et une page gauche pour le sens de lecture droite à gauche).
verso
Force un ou deux sauts de page après la boîte de l'élément afin que la prochaine page soit une page verso (une page gauche pour le sens de lecture gauche à droite et une page droite pour le sens de lecture droite à gauche).
avoid-page
Empêche toute saut de page après la boîte de l'élément.
avoid-column
Empêche toute rupture de colonne après la boîte de l'élément.
avoid-region
Empêche toute rupture de région après boîte de l'élément.

Syntaxe formelle

auto | avoid | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region

Exemples

CSS

.exemple {
  -webkit-column-count: 4;
  -moz-column-count: 4;
  column-count: 4;
}

p {
  break-after: avoid-column;
  /* Pour Firefox : */
  page-break-after: avoid;
  /* Pour WebKit : */
  -webkit-column-break-after: avoid;
}

HTML

<div class="exemple">
  <p>« Mais alors, » pensa Alice, « ne serai-je donc
  jamais plus vieille que je ne le suis maintenant ?
  D’un côté cela aura ses avantages, ne jamais être
  une vieille femme. Mais alors avoir toujours des
  leçons à apprendre ! Oh, je n’aimerais pas cela du
  tout. »</p>
  <p>« Oh ! Alice, petite folle, » se répondit-elle.
  « Comment pourriez-vous apprendre des leçons ici ?
  Il y a à peine de la place pour vous, et il n’y en
  a pas du tout pour vos livres de leçons. »</p>
</div>

Résultat

Spécifications

Spécification État Commentaires
CSS Fragmentation Module Level 3
La définition de 'break-after' dans cette spécification.
Candidat au statut de recommandation Ajouts des mots-clés recto et verso. Le type de média pour cette propriété est passé de paged à visual. L'algorithme de rupture est précisé afin de gérer les différents types de rupture.
CSS Regions Module Level 1
La définition de 'break-after' dans cette spécification.
Version de travail La spécification étend la propriété pour gérer les sauts de région. Les mots-clés avoid-region et region sont ajoutés.
CSS Multi-column Layout Module
La définition de 'break-after' dans cette spécification.
Candidat au statut de recommandation Définition initiale. La spécification étend la propriété page-break-after de CSS 2.1 afin de gérer les sauts de page ou de colonne.

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Support simple Pas de support [*] Pas de support 10 11.10 Pas de support [*]
column, avoid-column Pas de support [*] Pas de support 10 11.10 Pas de support [*]
recto, verso Pas de support Pas de support Pas de support Pas de support Pas de support
region, avoid-region Pas de support [*] Pas de support Pas de support Pas de support Pas de support [*]
Fonctionnalité Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Support simple Pas de support [*] Pas de support ? ? Pas de support [*]
column, avoid-column Pas de support [*] Pas de support ? ? Pas de support [*]
recto, verso Pas de support Pas de support Pas de support Pas de support Pas de support
region, avoid-region Pas de support [*] Pas de support Pas de support Pas de support Pas de support[*]

[*] Les navigateurs WebKit et Blink ne prennent pas en charge cette propriété mais possèdent les versions non-standards -webkit-column-break-after et -webkit-region-break-after qui prennent des valeurs semblables à page-break-after.

Étiquettes et contributeurs liés au document

Étiquettes : 
 Contributeurs à cette page : SphinxKnight
 Dernière mise à jour par : SphinxKnight,