Skip to content

Commit 3184e20

Browse files
committed
[css-typed-om] Add support for perspective(none) to CSSPerspective.
This adds support for the none argument to the perspective() transform function to CSSPerspective. Fixes w3c#1051.
1 parent bd98097 commit 3184e20

File tree

1 file changed

+20
-6
lines changed

1 file changed

+20
-6
lines changed

css-typed-om/Overview.bs

+20-6
Original file line numberDiff line numberDiff line change
@@ -2442,6 +2442,8 @@ This list is the object's [=values to iterate over=].
24422442
</div>
24432443

24442444
<xmp class=idl>
2445+
typedef (CSSNumericValue or CSSKeywordish) CSSPerspectiveValue;
2446+
24452447
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
24462448
interface CSSTransformComponent {
24472449
stringifier;
@@ -2499,8 +2501,8 @@ This list is the object's [=values to iterate over=].
24992501

25002502
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
25012503
interface CSSPerspective : CSSTransformComponent {
2502-
constructor(CSSNumericValue length);
2503-
attribute CSSNumericValue length;
2504+
constructor(CSSPerspectiveValue length);
2505+
attribute CSSPerspectiveValue length;
25042506
};
25052507

25062508
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
@@ -2742,10 +2744,20 @@ This list is the object's [=values to iterate over=].
27422744
when invoked,
27432745
perform the following steps:
27442746

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}}.
27472759

2748-
2. Return a new {{CSSPerspective}} object
2760+
3. Return a new {{CSSPerspective}} object
27492761
with its {{CSSPerspective/length}} internal slot
27502762
set to |length|,
27512763
and its {{CSSTransformComponent/is2D}} internal slot set to `false`.
@@ -5404,7 +5416,9 @@ while CSS <<transform-function>> values become {{CSSTransformComponent}}s.
54045416
::
54055417
1. Return a new {{CSSPerspective}} object,
54065418
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')
54085422
and whose {{CSSTransformComponent/is2D}} internal slot
54095423
is `false`.
54105424
</dl>

0 commit comments

Comments
 (0)