@@ -3147,9 +3147,9 @@ Comparison Functions: ''min()'', ''max()'', and ''clamp()''</h3>
3147
3147
3148
3148
For all three functions,
3149
3149
the argument [=calculations=] can resolve to any <<number>> , <<dimension>> , or <<percentage>> ,
3150
- but must have the <em> same </em> [=determine the type of a calculation|type=] ,
3150
+ but must have a [=consistent type=]
3151
3151
or else the function is invalid;
3152
- the result will have the same [=CSSNumericValue/ type=] as the arguments .
3152
+ the result's type will be the [=consistent type=] .
3153
3153
3154
3154
<div class="example">
3155
3155
@@ -3240,9 +3240,9 @@ Stepped Value Functions: ''round()'', ''mod()'', and ''rem()''</h3>
3240
3240
rounded according to the rounding strategy,
3241
3241
to the nearest integer multiple of B either above or below A.
3242
3242
The argument [=calculations=] can resolve to any <<number>> , <<dimension>> , or <<percentage>> ,
3243
- but must have the <em> same </em> [=determine the type of a calculation|type=] ,
3243
+ but must have a [=consistent type=]
3244
3244
or else the function is invalid;
3245
- the result will have the same [=CSSNumericValue/ type=] as the arguments .
3245
+ the result's type will be the [=consistent type=] .
3246
3246
3247
3247
If A is exactly equal to an integer multiple of B,
3248
3248
''round()'' resolves to A exactly
@@ -3503,7 +3503,7 @@ Trigonometric Functions: ''sin()'', ''cos()'', ''tan()'', ''asin()'', ''acos()''
3503
3503
The <dfn lt="atan2()">atan2(A, B)</dfn> function
3504
3504
contains two comma-separated [=calculations=] , A and B.
3505
3505
A and B can resolve to any <<number>> , <<dimension>> , or <<percentage>> ,
3506
- but must have the <em> same </em> [=determine the type of a calculation|type=] ,
3506
+ but must have a [=consistent type=]
3507
3507
or else the function is invalid.
3508
3508
The function returns the <<angle>>
3509
3509
between the positive X-axis and the point (B,A).
@@ -3706,9 +3706,9 @@ Exponential Functions: ''pow()'', ''sqrt()'', ''hypot()'', ''log()'', ''exp()''
3706
3706
(That is,
3707
3707
the square root of the sum of the squares of its arguments.)
3708
3708
The argument [=calculations=] can resolve to any <<number>> , <<dimension>> , or <<percentage>> ,
3709
- but must have the <em> same </em> [=determine the type of a calculation|type=] ,
3709
+ but must have a [=consistent type=]
3710
3710
or else the function is invalid;
3711
- the result will have the same [=CSSNumericValue/ type=] as the arguments .
3711
+ the result's type will be the [=consistent type=] .
3712
3712
3713
3713
<details class=note>
3714
3714
<summary> Why does ''hypot()'' allow dimensions (values with units), but ''pow()'' and ''sqrt()'' only work on numbers?</summary>
@@ -4321,6 +4321,12 @@ Type Checking</h3>
4321
4321
</dl>
4322
4322
</div>
4323
4323
4324
+ <div algorithm>
4325
+ Two or more calculations have a <dfn export local-lt="consistent">consistent type</dfn>
4326
+ if [=add two types/adding the types=] doesn't result in failure.
4327
+ The [=consistent type=] is the result of the type addition.
4328
+ </div>
4329
+
4324
4330
[=Math functions=] themselves have [=CSSNumericValue/types=] ,
4325
4331
according to their contained [=calculations=] :
4326
4332
0 commit comments