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.

/* 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 sont appliquées. Cela correspond à contain: size layout style paint.
content
Toutes les règles de confinement, à l'exception de celles pour size, sont appliquées à l'élément. Cela est équivalent à contain: layout style 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 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.

Syntaxe formelle

none | strict | content | [ size || layout || style || paint ]

Spécifications

Spécification État Commentaires
CSS Containment Module Level 1 Candidat au statut de recommandation Définition initiale.

Valeur initialenone
Applicabilitétous les éléments
Héritéenon
Médiatous
Valeur calculéecomme spécifié
Type d'animationdiscrète
Ordre canoniqueselon la grammaire

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidEdge MobileFirefox pour AndroidOpera pour AndroidSafari sur iOSSamsung Internet
contain
Expérimentale
Chrome Support complet 52Edge ? Firefox Support complet 41
Notes Désactivée
Support complet 41
Notes Désactivée
Notes See bug 1150081 for the overall implementation status.
Désactivée From version 41: this feature is behind the layout.css.contain.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE ? Opera Support complet 40Safari ? WebView Android Support complet 52Chrome Android Support complet 52Edge Mobile ? Firefox Android Support complet 41
Notes Désactivée
Support complet 41
Notes Désactivée
Notes See bug 1150081 for the overall implementation status.
Désactivée From version 41: this feature is behind the layout.css.contain.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
Opera Android Support complet 40Safari iOS ? Samsung Internet Android ?

Légende

Support complet  
Support complet
Compatibilité inconnue  
Compatibilité inconnue
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Voir les notes d'implémentation.
Voir les notes d'implémentation.
Une action explicite de l'utilisateur est nécessaire pour activer cette fonctionnalité.
Une action explicite de l'utilisateur est nécessaire pour activer cette fonctionnalité.

Voir aussi

Étiquettes et contributeurs liés au document

Contributeurs à cette page : mdnwebdocs-bot, SphinxKnight, ebrehault, vdesdoigts
Dernière mise à jour par : mdnwebdocs-bot,