Transform-box - Propriété CSS
Résumé des caractéristiques de la propriété transform-box
view-box
| content-box
| border-box
| fill-box
| stroke-box
view-box
transform-box
passe d'une valeur à l'autre sans transition.Schéma de la syntaxe de transform-box
.
transform-box
.Cliquez sur les liens du schéma pour plus de précisons sur les valeurs.
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.

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

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
.
Valeurs 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;
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: 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-box
⇔border-box
fill-box
⇔content-box
stroke-box
⇔border-box
. - transform-box: initial; (
view-box
) transform-box: inherit; transform-box: revert; transform-box: revertLayer; transform-box: unset;Les valeurs communes sont présentées sur ces pages :
initial
,inherit
,revert
,revert-layer
,unset
.
Exemple d'animation de 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
.
Exemple interactif avec la propriété 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
.
Compatibilité des navigateurs avec transform-box
.
backface-visibility
.transform-box
qui définit quelle est la boite de référence pour les transformations.Remarques :
(1) Ne supporte pas les transformations 2D sur les éléments SVG. Utilisez l'attribut transform
à la place.
(2) Internet Explorer ne supporte pas transform-style:preserve-3d
limitant ainsi l'imbrication des animations.
2D
3D
transform-box
Navigateurs sur ordinateurs :
Navigateurs sur mobiles :
Navigateurs obsolètes ou marginaux :

Internet Explorer

KaiOS Browser

Opéra Mobile

Opéra

Firefox pour Androïd

Samsung Internet

Chrome

Edge

Firefox

Androïd Brower

Chrome pour Androïd

Baidu Browser

QQ Browser

Safari

Safari sur IOS

UC Browser pour Androïd

Opéra mini
Histoire de la propriété transform-box
.
-
Module CSS - Transformations - Niveau 1
Introduction des transformations en 2D via CSS.
Première définition de la propriététransform-box
.28 Février 2012Document de travail.14 Février 2019Candidat à la recommandation. -
Module CSS - Transformations - Niveau 2
Ce niveau de la spécification introduit les transformations en 3D.
Pas de changement concernant directement la propriététransform-box
.03 Mars 2020Document de travail.
Voir aussi, au sujet des transformations.
Le module "Module CSS - Transformations" (ou CSS Transforms Module en anglais) décrit la propriété transform-box
, et regroupe également toutes
les définitions concernant les transformations en CSS :