Les propriétés CSS contain-intrinsic...

contain-intrinsic-size

Résumé des caractéristiques de la propriété contain-intrinsic-size

Description rapide
Définit les dimensions de l'élément (blocs et lignes) lorsque l'élément est confiné.
Statut
Standard
Utilisable sur
HTML
Valeurs prédéfinies
none | auto
Pourcentages
Ne s'appliquent pas.
Valeur initiale
none
Héritée par défaut
Non.
Type d'animation
Computed value : lors d'une animation, la propriété contain-intrinsic-size passe progressivement d'une valeur à une autre.
Module W3C
Module CSS - Dimensionnement des blocs
Références (W3C)
Statut du document: WD (document de travail)

Syntaxe de contain-intrinsic-size (schéma).

contain-intrinsic-size - Syntax DiagramSyntax diagram of the contain-intrinsic-size CSS property. See stylescss.free.fr for details. none none length length auto length auto lengthcontain-intrinsic...:;contain-intrinsic...:;
Schéma syntaxique de la propriété
contain-intrinsic-size
La même syntaxe est valide pour toutes les propriétés
dont le nom commence par contain-intrinsic.

Description des termes utilisés sur le schéma :

Description des propriétés contain-intrinsic....

Toutes ces propriétés, dont le nom commence par contain-intrinsic, agissent dans le cas d'un élément confiné (Contained element), c'est à dire un élément dont la propriété contain a la valeur size ou strict.

La technique du confinement permet de simplifier les calculs à réaliser pour restituer une page complexe dont certaines parties sont susceptibles de changer dynamiquement. Reportez-vous à la description de la propriété contain pour une présentation de la technique du confinement.

Les propriétés contain-intrinsic... définissent les dimensions d'un élément confiné indépendamment de son contenu.

  • contain-intrinsic-width : largeur de l'élément, quelque soit le mode d'écriture.
  • contain-intrinsic-height : hauteur de l'élément, quelque soit le mode d'écriture.
  • contain-intrinsic-block-size : dimension de l'élément dans la direction des blocs. Pour le mode d'écriture des langues latines, ce sera la hauteur.
  • contain-intrinsic-inline-size : dimension de l'élément dans la direction des lignes. Pour le mode d'écriture des langues latines, ce sera la largeur.
  • contain-intrinsic-size : propriété résumée qui permet de définir en une seule écriture les dimensions de l'élément dans la direction des blocs et dans la direction des lignes.

L'intérêt des propriétés contain-intrinsic... apparaît surtout sur des éléments inclus dans un flex-box ou dans une grille. En effet, la grille ou le flex-box peuvent forcer une dimension et donc ignorer les valeurs de height et width.

Notez que les propriétés contain-intrinsic... définissent une dimension réservée par rapport au contenu. Ce qui n'est pas la même chose que les propriétés classiques height et width, qui définissent les dimensions de l'élément lui-même.

contain-intrinsic-height vs height

Prise en charge de la langue.

Si la page utilise des langues non latines, il est conseillé d'utiliser les propriétés logiques contain-intrinsic-block-size et contain-intrinsic-inline-size, ou la propriété résumée contain-intrinsic-size.

   

contain-intrinsic-width
La direction et le sens d'écriture de ce texte s'adaptent à la langue choisie.
contain-intrinsic-height

Valeurs pour contain-intrinsic-size.

  • contain-intrinsic-size: none;

    Aucune dimension particulière n'est définie. Dans notre exemple ci-dessous c'est le flex-box qui détermine la hauteur des éléments, en se basant sur le deuxième élément puisque le premier est confiné sans indication de hauteur (un élément confiné à une hauteur de 0 par défaut).

    Flex-box
    contain:size;
    Ceci est le contenu initial de l'élément, présent dès le chargement de la page.
    contain:none;
    Deuxième élément du flex-box

  • contain-intrinsic-size: 70px;

    Une valeur numérique positive ou nulle, suivie d'une des unités de dimension. La dimension intrinsèque de l'élément est fixée à la valeur indiquée, dans la direction correspondante (hauteur, largeur, blocs ou lignes).

    Dans notre exemple ci-dessous, la propriété contain-intrinsic-height du premier élément est fixée à 70 pixels.

    Flex-box
    contain:size;
    Ceci est le contenu initial de l'élément, présent dès le chargement de la page.
    contain:none;
    Deuxième élément du flex-box

  • contain-intrinsic-size: auto 70px;

    La dimension intrinsèque de l'élément est fixée à la dernière valeur connue. A défaut c'est la valeur indiquée en deuxième position qui est prise en compte.

    Flex-box
    contain:size;
    Ceci est le contenu initial de l'élément, présent dès le chargement de la page.
    contain:none;
    Deuxième élément du flex-box

  • contain-intrinsic-size: initial; (none) contain-intrinsic-size: inherit; contain-intrinsic-size: revert; contain-intrinsic-size: revertLayer; contain-intrinsic-size: unset;

    Liens vers la présentation de ces différentes valeurs : initial, inherit, revert, revert-layer, unset.

Animation des propriétés contain-intrinsic....

L'animation des propriétés contain-intrinsic... produit un effet comparable à l'animation des propriétés de dimension classiques : height, width, etc.

Support de contain-intrinsic-size.

La compatibilité des navigateurs actuels avec les propriétés contain-intrinsic... est très bonne, aussi bien pour les propriétés physiques, que pour les propriétés logiques.

Colonne 1
Support des propriétés physiques contain-intrinsic-width et contain-intrinsic-height.
Colonne 2
Support des propriétés logiques contain-intrinsic-block-size et contain-intrinsic-inline-size.
Colonne 3
Support de la propriété logique résumée contain-intrinsic-size qui regroupe les valeurs de contain-intrinsic-block-size et contain-intrinsic-inline-size.
1
Propriétés
physiques
2
Propriétés
logiques
3
Propriété
logique
résumée
Estimation de la prise en charge globale.
92%
91%
92%

Navigateurs sur ordinateurs :

Navigateurs sur mobiles :

Navigateurs obsolètes ou marginaux :

Internet Explorer

UC Browser pour Androïd

Opéra Mobile

QQ Browser

Baidu Browser

Opéra

Samsung Internet

Firefox pour Androïd

Edge

Firefox

Chrome pour Androïd

Androïd Brower

Safari

Safari sur IOS

Chrome

KaiOS Browser

Opéra mini

Évolution de la propriété contain-intrinsic-size.

  • Module CSS - Dimensionnement des blocs Niveau 4

    Première présentation des propriétés contain-intrinsic-width, contain-intrinsic-height, contain-intrinsic-block-size, contain-intrinsic-inline-size, et de la propriété résumée contain-intrinsic-size.
    WD
    26 Mai 2020
    Document de travail.
    CR
    PR
    REC

Le dimensionnement des blocs. Voir aussi...

Le dimensionnement des blocs fait maintenant l'objet d'une spécification séparée : CSS Box Sizing Module, dans laquelle sont décrits également les termes suivants :

Propriétés :

aspect-ratio
Définit le ratio entre la largeur et la hauteur de l'élément.
block-size
Définit la dimension d'un l'élément suivant la direction des blocs.
box-sizing
Définit le mode de calcul des dimensions de blocs : en incluant ou non les bordures et les marges intérieures.
contain-intrinsic-block-size
Définit la dimension de l'élément dans la direction des blocs, lorsque l'élément est confiné.
contain-intrinsic-height
Définit la hauteur intrinsèque de l'élément lorsque celui-ci est confiné.
contain-intrinsic-inline-size
Définit la dimension de l'élément dans la direction des lignes, lorsque l'élément est confiné.
contain-intrinsic-width
Définit la largeur intrinsèque de l'élément lorsque celui-ci est confiné.
height
Définit la hauteur de l'élément.
inline-size
Définit la dimension de l'élément dans la direction des lignes.
max-height
Définit une limite à la hauteur maximale de l'élément.
max-width
Définit la largeur maximale de l'élément.
min-height
Définit la hauteur minimale de l'élément.
min-width
Définit la largeur minimale de l'élément.
width
Définit la largeur de l'élément.

Fonctions :

fit-content()
Calcule une dimension en fonction du contenu et de limites.

Valeurs:

fit-content
Calcule la dimension d'un élément en fonction de son contenu et de la place disponible.
max-content
Donne la dimension d'un texte sans insérer de retours à la ligne.
min-content
Donne la dimension d'un texte après avoir inséré le plus possible de retours à la ligne.