@@ -2442,6 +2442,8 @@ This list is the object's [=values to iterate over=].
2442
2442
</div>
2443
2443
2444
2444
<xmp class=idl>
2445
+ typedef (CSSNumericValue or CSSKeywordish) CSSPerspectiveValue;
2446
+
2445
2447
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
2446
2448
interface CSSTransformComponent {
2447
2449
stringifier;
@@ -2499,8 +2501,8 @@ This list is the object's [=values to iterate over=].
2499
2501
2500
2502
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
2501
2503
interface CSSPerspective : CSSTransformComponent {
2502
- constructor(CSSNumericValue length);
2503
- attribute CSSNumericValue length;
2504
+ constructor(CSSPerspectiveValue length);
2505
+ attribute CSSPerspectiveValue length;
2504
2506
};
2505
2507
2506
2508
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
@@ -2742,10 +2744,20 @@ This list is the object's [=values to iterate over=].
2742
2744
when invoked,
2743
2745
perform the following steps:
2744
2746
2745
- 1. If |length| does not [=CSSNumericValue/match=] <<length>> ,
2746
- [=throw=] a {{TypeError}} .
2747
+ 1. If |length| is a {{CSSNumericValue}} :
2748
+
2749
+ 1. If |length| does not [=CSSNumericValue/match=] <<length>> ,
2750
+ [=throw=] a {{TypeError}} .
2751
+
2752
+ 2. Otherwise (that is, if |length| is not a {{CSSNumericValue}} ):
2753
+
2754
+ 1. [=Rectify a keywordish value=] from |length|,
2755
+ then set |length| to the result's value.
2756
+
2757
+ 2. If |length| does not repreent the identifier 'none' ,
2758
+ [=throw=] a {{TypeError}} .
2747
2759
2748
- 2 . Return a new {{CSSPerspective}} object
2760
+ 3 . Return a new {{CSSPerspective}} object
2749
2761
with its {{CSSPerspective/length}} internal slot
2750
2762
set to |length|,
2751
2763
and its {{CSSTransformComponent/is2D}} internal slot set to `false`.
@@ -5404,7 +5416,9 @@ while CSS <<transform-function>> values become {{CSSTransformComponent}}s.
5404
5416
::
5405
5417
1. Return a new {{CSSPerspective}} object,
5406
5418
whose {{CSSPerspective/length}} internal slot
5407
- is set to the [=reify a numeric value|reification=] of the specified length
5419
+ is set to the reification of the specified length
5420
+ (see [=reify a numeric value=] if it is a length, and
5421
+ [=reify an identifier=] if it is the keyword 'none' )
5408
5422
and whose {{CSSTransformComponent/is2D}} internal slot
5409
5423
is `false`.
5410
5424
</dl>
0 commit comments