<calc-sum>
Le type de donnée CSS <calc-sum> représente une expression qui effectue un calcul dans n'importe quelle fonction mathématique CSS. L'expression réalise une opération arithmétique d'addition ou de soustraction entre deux valeurs.
Syntaxe
Le type <calc-sum> définit deux valeurs numériques et l'un des opérateurs arithmétiques suivants entre elles.
Syntaxe formelle
<calc-sum> =
<calc-product> [ [ '+' | '-' ] <calc-product> ]*
<calc-product> =
<calc-value> [ [ '*' | / ] <calc-value> ]*
<calc-value> =
<number> |
<dimension> |
<percentage> |
<calc-keyword> |
( <calc-sum> )
<calc-keyword> =
e |
pi |
infinity |
-infinity |
NaN
Description
Les opérandes de l'expression peuvent être n'importe quelle valeur de la syntaxe <length>. Vous pouvez utiliser <length>, <frequency>, <angle>, <time>, <percentage>, <number> ou <integer>.
Les deux opérandes doivent être du même type. Pour les longueurs, vous ne pouvez pas utiliser 0 pour dire 0px (ou une autre unité de longueur). Il faut ajouter une unité explicite : margin-top: calc(0px + 20px); est valide, alors que margin-top: calc(0 + 20px); est invalide. Les types de valeurs en pourcentage sont résolus selon le contexte. Par exemple, margin-top: calc(50% + 20px); est valide car margin-top résout les pourcentages en longueurs.
L'inclusion de variables CSS dans les expressions calc-sum est également autorisée. Le code suivant calc(10px + var(--variable)) est une expression valide.
Les opérateurs + et - doivent obligatoirement être entourés d'espaces. Par exemple, calc(50% -8px) sera interprété comme « un pourcentage suivi d'une longueur négative » — ce qui est une expression invalide — tandis que calc(50% - 8px) correspond à « un pourcentage suivi d'un opérateur de soustraction et d'une longueur ». De même, calc(8px + -50%) est interprété comme « une longueur suivie d'un opérateur d'addition et d'un pourcentage négatif ».
Spécifications
| Specification |
|---|
| CSS Values and Units Module Level 4> # typedef-calc-sum> |
Voir aussi
- Le type de donnée
<calc-product> - Le type de donnée
<calc-value> - Le type de donnée
<calc-keyword>