Une remarque ? Une suggestion ?...

Merci de participer à l'amélioration de ce site. Prenez le temps de rédiger votre remarque le plus précisément possible :

transform-box - Propriété CSS

transform-box

Résumé des caractéristiques de la propriété transform-box

Description rapide
Définit la boîte de référence pour les transformations.
Statut
Standard
Utilisable sur
HTML, SVG
Valeurs prédéfinies
view-box | content-box | border-box | fill-box | stroke-box
Pourcentages
Ne s'appliquent pas.
Valeur initiale
view-box
Héritée par défaut
Non
Type d'animation
Discrète : lors d'une animation, la propriété transform-box passe d'une valeur à l'autre sans transition.
Module W3C
Module CSS - Transformations
Références (W3C)
Statut du document:: CR (document proposé pour la recommandation)

Schéma syntaxique de transform-box.

transform-box - Syntax DiagramSyntax diagram of the transform-box CSS property. content-box content-box border-box border-box fill-box fill-box stroke-box stroke-box view-box view-boxtransform-box:;transform-box:;
Schéma syntaxique de la propriété transform-box
Description des valeurs et exemples
Télécharger le schéma en SVG

Description de la propriété transform-box.

La propriété transform-box définit quelle est la boîte de référence pour les transformations, le point précis de référence (le point fixe) étant défini par transform-origin.

Exemple : une rotation a été appliquée à l'élément ci-dessous; dans le premier cas, la boîte de référence est la bordure (border-box), dans le deuxième cas c'est le contenu (content-box). Le point fixe, celui qui ne subit aucune transformation, est légèrement décalé, et le résultat sensiblement différent.

Rotation avec transform-box:border-box transform-box:border-box;
transform-origin:0 0;
transform:rotate(20deg);
Rotation avec transform-box:content-box transform-box:content-box;
transform-origin:0 0;
transform:rotate(20deg);

 

Reportez-vous à la propriété transform pour une présentation plus générale des transformations, et également à la propriété transform-origin.

Syntaxes pour transform-box.

  • transform-box: content-box;

    Cette valeur définit la boîte de référence au contenu, en excluant donc les marges intérieures (padding), et l'épaisseur de la bordure.

    transform-box: border-box

  • transform-box: border-box;

    Cette valeur définit la boîte de référence à la bordure de l'élément, en incluant les marges intérieures, l'épaisseur de la bordure, mais en excluant les marges extérieures.

    transform-box: content-box

  • transform-box: view-box; transform-box: fill-box; transform-box: stroke-box;

    Ces valeurs sont plutôt adaptées aux éléments SVG. En HTML on a les équivalences suivantes :
    view-boxborder-box
    fill-boxcontent-box
    stroke-boxborder-box.

  • transform-box: initial; transform-box: inherit; transform-box: revert; transform-box: revert-layer; transform-box: unset;

    La valeur initiale est : view-box.

Animation de la propriété transform-box.

La seule animation de transform-box ne donne pas des effets très spectaculaires. Pour la démonstration ci-dessous, l'élément bleu a été soumis à deux animations :

  • Une première, rapide, sur transform-box.
  • Une deuxième, plus lente sur transform.

Simulateur pour transform-box.

La bordure de l'élément tournant est exagérément épaisse, afin de bien montrer l'effet de la propriété transform-box. Par ailleurs la valeur de transform-origin a été fixée à 0px 0px, ce qui correspond au coin en haut à gauche de l'élément. C'est à dire le point rouge lorsque on prend comme référence border-box, ou le point vert si la référence est fill-box.

transform-box :
HTML

Prise en charge de transform-box par les navigateurs (compatibilité).

Colonne 1
Prise en charge par les navigateurs des transformations en 2D (dans le plan de l'écran).
Colonne 2
Prise en charge des transformations en 3D (qui peuvent sortir du plan de l'écran).
Colonne 3
Support par les navigateurs de la propriété transform-box.
1
2D transformations
2
3D transformations
3
transform-box
Estimation de la prise en charge en pourcentage du parc actuel.
98%
97%
93%

Navigateurs sur ordinateurs :

Navigateurs sur mobiles :

Navigateurs obsolètes ou marginaux :

Androïd Brower

Baidu Browser

Chrome

Chrome pour Androïd

Edge

Firefox

Firefox pour Androïd

Internet Explorer

KaiOS Browser

Opéra

Opéra Mobile

QQ Browser

Safari

Safari sur IOS

Samsung Internet

Oméra mini

Voir aussi, dans le même module de standardisation que transform-box.

Les spécifications CSS éditées par le W3C sont organisées en modules. transform-box fait partie du Module CSS - Transformations (CSS Transforms Module). Les définitions suivantes sont également décrites dans ce même module.

Propriétés.

Visibilité de la face arrière de l'élément (pendant sa rotation).
Effet de perspective appliqué à un élément ayant subi une transformation 3D.
Position de l'observateur dans le cas d'une déformation 3D avec perspective.
Définit une rotation de l'élément.
Définit un mise à l'échelle de l'élément (agrandissement ou réduction).
Applique une ou plusieurs transformations géométriques (rotations, agrandissements, etc.).
Point d'origine pour les transformations.
Rendu des éléments soumis à une transformation 3D.
Définit une translation de l'élément (un déplacement).
Définit un agrandissement ou une réduction de l'élément.

Fonctions.

Applique une transformation composite à un élément (translations, rotations...)
Applique une série de transformations 3D à un élément.
Définit la hauteur de l'observateur dans le cas d'une transformation 3D.
Définit une rotation de l'élément en 2D (dans le plan de l'écran).
Définit une rotation 3D de l'élément autour d'un axe quelconque en 3D.
Définit une rotation de l'élément autour de l'axe X (en 3D),
Définit une rotation 3D de l'élément autour de l'axe Y.
Définit une rotation de l'élément autour de l'axe Z.
Définit un agrandissement ou une réduction de l'élément.
Définit une mise à l'échelle en 3D.
Définit une mise à l'échelle suivant l'axe X.
Définit une mise à l'échelle suivant l'axe Y.
Définit une mise à l'échelle suivant l'axe Z.
Définit une inclinaison de l'élément suivant les axes X et/ou Y.
Définit une inclinaison de l'élément suivant l'axe X.
Définit une inclinaison de l'élément suivant l'axe Y.
Applique une translation (un déplacement ) à un élément.
Définit une translation en 3D suivant un ou plusieurs des axes X,Y et Z.
Définit une translation suivant l'axe X (horizontalement).
Définit une translation suivant l'axe Y (verticalement).
Définit une translation suivant l'axe Z (perpendiculaire à l'écran).