Skip to content

Commit 1c3101f

Browse files
committed
[css-values-4] Issue w3c#250 - Allow <percentage> to be its own type, for some hypothetical future use.
1 parent 5ab2cdc commit 1c3101f

1 file changed

Lines changed: 11 additions & 5 deletions

File tree

css-values/Overview.bs

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1470,12 +1470,12 @@ Mathematical Expressions: ''calc()''</h3>
14701470
<<frequency>>,
14711471
<<angle>>,
14721472
<<time>>,
1473+
<<percentage>>,
14731474
<<number>>, or
14741475
<<integer>>
14751476
values are allowed.
1476-
Components of a ''calc()'' expression can be literal values,
1477-
''attr()'' or ''calc()'' expressions,
1478-
or <<percentage>> values that resolve to one of the preceding types.
1477+
Components of a ''calc()'' expression can be literal values or
1478+
''attr()'' or ''calc()'' expressions.
14791479

14801480
<div class="example">
14811481
<pre>
@@ -1566,6 +1566,7 @@ Type Checking</h4>
15661566
<<frequency>>,
15671567
<<angle>>,
15681568
<<time>>,
1569+
<<percentage>>,
15691570
<<number>>, or
15701571
<<integer>>.
15711572
The <a>resolved type</a> must be valid for where the expression is placed;
@@ -1577,8 +1578,13 @@ Type Checking</h4>
15771578
An ''attr()'' expression's type is given by its <<type-or-unit>> argument.
15781579

15791580
If percentages are accepted in the context in which the expression is placed,
1580-
a <<percentage-token>> has the type of the value that percentages are relative to;
1581-
otherwise, a math expression containing percentages is invalid.
1581+
a <<percentage-token>> has the type of the value that percentages are relative to.
1582+
For example, in the 'width' property, percentages have the <<length>> type,
1583+
and in 'opacity' they have the <<number>> type.
1584+
A percentage only has the <<percentage>> type if in that context
1585+
<<percentage>> values are not used-value compatible with any other type.
1586+
If percentages are not normally allowed in place of the ''calc()'',
1587+
then a ''calc()'' expression containing percentages is invalid in that context.
15821588

15831589
Operators form sub-expressions, which gain types based on their arguments.
15841590
To make expressions simpler,

0 commit comments

Comments
 (0)