contain

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2022.

Expérimental: Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La propriété CSS contain permet d'indiquer qu'un élément, ainsi que son contenu, sont, autant que possible, indépendants du reste de l'arbre du document. Cela permet au navigateur de recalculer la disposition, la mise en forme, la taille, les peintures ou toute combinaison de ces éléments pour une zone donnée du DOM plutôt que pour la page complète.

css
/* Valeurs avec un mot-clé */
contain: none;
contain: strict;
contain: content;
contain: size;
contain: layout;
contain: style;
contain: paint;

/* Valeurs globales */
contain: inherit;
contain: initial;
contain: unset;

Cette propriété s'avère utile pour les pages qui contiennent de nombreux composants indépendants et permet de limiter la portée des règles sur le reste de la page.

Note : Lorsqu'elle est appliquée avec une valeur paint, strict ou content, cette propriété crée :

Syntaxe

Valeurs

none

L'élément est affiché normalement, aucun confinement n'est appliqué.

strict

Toutes les règles possibles de confinement à l'exception de style sont appliquées. Cela correspond à contain: size layout paint.

content

Toutes les règles de confinement, à l'exception de celles pour size et style, sont appliquées à l'élément. Cela est équivalent à contain: layout paint.

size

Cette valeur indique que l'élément peut être dimensionné sans avoir à examiner les éléments descendants pour les modifications de la taille.

layout

Cette valeur indique qu'aucun élément en dehors de l'élément, ne peut impacter sa disposition interne et réciproquement.

style

Cette valeur indique que les propriétés ayant un effet sur un élément et ses descendants voire plus sont bien limitées à l'élément englobant.

paint

Cette valeur indique que les éléments descendants de l'élément ne sont pas affichés en dehors de ses limites. Si un élément est en dehors de l'écran ou n'est pas visible, cette valeur assure que les éléments descendants ne sont pas visibles non plus.

Définition formelle

Valeur initialenone
Applicabilitétous les éléments
Héritéenon
Valeur calculéecomme spécifié
Type d'animationNot animatable

Syntaxe formelle

contain = 
none |
strict |
content |
[ [ size | inline-size ] || layout || style || paint ]

Spécifications

Specification
CSS Containment Module Level 2
# contain-property

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi