Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. CSS
  3. Référence
  4. Propriétés CSS
  5. break-before

Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in EnglishAlways switch to English

break-before

Baseline Widely available *

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis janvier 2019.

* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.

La propriétéCSSbreak-before définit la façon dont les sauts de page, de colonne ou de région doivent se comporter avant une boîte générée. Si aucune boîte n'est générée, la propriété est ignorée.

Exemple interactif

break-before: auto;
break-before: page;
<div>  <p>    L'effet de cette propriété peut être observé lors de l'impression du    document ou de l'affichage d'un aperçu avant impression.  </p>  <button>Afficher l'aperçu avant impression</button>  <div>    <div>Contenu avant la propriété</div>    <div>      Contenu avec «&nbsp;break-before&nbsp;»    </div>    <div>Contenu après la propriété</div>  </div></div>
.box {  border: solid #5b6dcd 5px;  background-color: #5b6dcd;  margin: 10px 0;  padding: 5px;}#example-element {  border: solid 5px #ffc129;  background-color: #ffc129;  color: black;}
const btn = document.getElementById("print-btn");btn.addEventListener("click", () => {  window.print();});

Syntaxe

css
/* Valeurs de rupture génériques */break-before: auto;break-before: avoid;break-before: always;break-before: all;/* Valeurs de rupture pour les pages */break-before: avoid-page;break-before: page;break-before: left;break-before: right;break-before: recto;break-before: verso;/* Valeurs de rupture pour les colonnes */break-before: avoid-column;break-before: column;/* Valeurs de rupture pour les régions */break-before: avoid-region;break-before: region;/* Valeurs globales */break-before: inherit;break-before: initial;break-before: revert;break-before: revert-layer;break-before: unset;

Chaque point de rupture éventuel (c'est-à-dire chaque frontière d'élément) est influencé par trois propriétés : la valeur debreak-after de l'élément précédent, la valeur debreak-before de l'élément suivant et la valeur debreak-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 ouregion), 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 surbreak-after, qui l'emporte surbreak-inside).
  2. Si l'une des trois valeurs correspond à une valeur visant à éviter une rupture (avoid,avoid-page,avoid-region ouavoid-column), aucune rupture ne sera appliquée à cet endroit.

Une fois que des ruptures forcées ont été appliquées, des ruptures douces peuvent être ajoutées si nécessaire, mais pas sur les frontières des éléments qui se résolvent par une valeuravoid correspondante.

Valeurs

Valeurs de rupture génériques

auto

Valeur initiale qui ne force ni n'interdit de rupture (de page, de colonne ou de région) avant la boîte.

avoid

Empêche toute rupture (de page, de colonne ou de région) avant la boîte.

always

Force la rupture juste avant la boîte principale. Le type de rupture dépend du contexte de fragmentation englobant l'élément. Si l'élément est situé dans un conteneur multi-colonne, une rupture de colonne sera ajoutée. Si l'élément est situé dans un média paginé (mais pas dans un conteneur multi-colonnes), la rupture introduite sera une rupture de page.

all

Force la rupture juste avant la boîte principale. La rupture a lieu pour l'ensemble des contextes de fragmentation. Ainsi si l'élément concerné est dans un conteneur multi-colonnes dans un média paginé, il y aura une rupture de colonne et une rupture de page.

Valeurs de rupture liées aux médias paginés

avoid-page

Empêche toute saut de page avant la boîte de l'élément.

page

Force un saut de page avant la boîte de l'élément

left

Force un ou deux sauts de page avant la boîte de l'élément afin que la prochaine page soit une page gauche.

right

Force un ou deux sauts de page avant la boîte de l'élément afin que la prochaine page soit une page droite.

recto

Force un ou deux sauts de page avant 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 avant 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).

Valeurs de ruptures relatives aux dispositions en colonnes

avoid-column

Empêche toute rupture de colonne avant la boîte de l'élément.

column

Force une rupture de colonne de page avant la boîte de l'élément.

Valeurs de ruptures relatives aux régions

avoid-region

Empêche toute rupture de région avant la boîte de l'élément.

region

Force une rupture de région avant la boîte de l'élément.

Alias de saut de page

Pour des raisons de compatibilité, la propriété historiquepage-break-before doit être traitée par les navigateurs comme un alias debreak-before. Cela garantit que les sites utilisantpage-break-before continuent de fonctionner comme prévu. Un sous-ensemble de valeurs doit être associé comme suit :

page-break-beforebreak-before
autoauto
leftleft
rightright
avoidavoid
alwayspage

Note :La valeuralways pourpage-break-* a été implémentée par les navigateurs comme une rupture de page et non comme une rupture de colonne. C'est pourquoi l'alias ici utilisé estpage et nonalways.

Définition formelle

Valeur initialeauto
Applicabilitééléments de type bloc
Héritéenon
Valeur calculéecomme défini
Type d'animationdiscrète

Syntaxe formelle

break-before =
auto|
avoid|
always|
all|
avoid-page|
page|
left|
right|
recto|
verso|
avoid-column|
column|
avoid-region|
region

Exemples

Découper en colonnes propres

Dans l'exemple qui suit, on a un conteneur qui contient un élément<h1> qui s'étend sur l'ensemble des colonnes (grâce àcolumn-span: all) et un ensemble d'éléments<h2> et de paragraphes disposés sur les différentes colonnes aveccolumn-width: 200px.

Par défaut, les sous-titres et les paragraphes auraient été disposés de façon chaotique en raison de l'emplacement non-uniforme des titres. Cependant, en utilisantbreak-before: column sur les éléments<h2>, on force une rupture de colonne avant chaque sous-titre et on obtient ainsi leur positionnement en début de colonne (pour les navigateurs compatibles).

HTML

html
<article>  <h1>Titre principal</h1>  <h2>Sous-titre</h2>  <p>    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla vitae    fringilla mauris. Quisque commodo eget nisi sed pretium. Mauris luctus nec    lacus in ultricies. Mauris vitae hendrerit arcu, ac scelerisque lacus.    Aliquam lobortis in lacus sit amet posuere. Fusce iaculis urna id neque    dapibus, eu lacinia lectus dictum.  </p>  <h2>Sous-titre</h2>  <p>    Praesent condimentum dui dui, sit amet rutrum diam tincidunt eu. Cras    suscipit porta leo sit amet rutrum. Sed vehicula ornare tincidunt. Curabitur    a ipsum ac diam mattis volutpat ac ut elit. Nullam luctus justo non    vestibulum gravida. Morbi metus libero, pharetra non porttitor a, molestie    nec nisi.  </p>  <h2>Sous-titre</h2>  <p>    Vivamus eleifend metus vitae neque placerat, eget interdum elit mattis.    Donec eu vulputate nibh. Ut turpis leo, malesuada quis nisl nec, volutpat    egestas tellus.  </p>  <h2>Sous-titre</h2>  <p>    In finibus viverra enim vel suscipit. Quisque consequat velit eu orci    malesuada, ut interdum tortor molestie. Proin sed pellentesque augue. Nam    risus justo, faucibus non porta a, congue vel massa. Cras luctus lacus nisl,    sed tincidunt velit pharetra ac. Duis suscipit faucibus dui sed ultricies.  </p></article>

CSS

css
html {  font-family: Helvetica, Arial, sans-serif;}h1 {  font-size: 3rem;  letter-spacing: 2px;  column-span: all;}h2 {  font-size: 1.2rem;  color: red;  letter-spacing: 1px;  break-before: column;}p {  line-height: 1.5;}article {  column-width: 200px;  gap: 20px;}

Résultat

Spécifications

Specification
CSS Fragmentation Module Level 3
# break-between
CSS Regions Module Level 1
# region-flow-break
CSS Multi-column Layout Module Level 1
# break-before-break-after-break-inside

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2026 Movatter.jp