diff --git a/css-typed-om/Overview.bs b/css-typed-om/Overview.bs
index 6a99b77e..ace2a79e 100644
--- a/css-typed-om/Overview.bs
+++ b/css-typed-om/Overview.bs
@@ -2442,6 +2442,8 @@ This list is the object's [=values to iterate over=].
+ typedef (CSSNumericValue or CSSKeywordish) CSSPerspectiveValue;
+
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
interface CSSTransformComponent {
stringifier;
@@ -2499,8 +2501,8 @@ This list is the object's [=values to iterate over=].
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
interface CSSPerspective : CSSTransformComponent {
- constructor(CSSNumericValue length);
- attribute CSSNumericValue length;
+ constructor(CSSPerspectiveValue length);
+ attribute CSSPerspectiveValue length;
};
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
@@ -2742,10 +2744,20 @@ This list is the object's [=values to iterate over=].
when invoked,
perform the following steps:
- 1. If |length| does not [=CSSNumericValue/match=] <>,
- [=throw=] a {{TypeError}}.
+ 1. If |length| is a {{CSSNumericValue}}:
+
+ 1. If |length| does not [=CSSNumericValue/match=] <>,
+ [=throw=] a {{TypeError}}.
+
+ 2. Otherwise (that is, if |length| is not a {{CSSNumericValue}}):
+
+ 1. [=Rectify a keywordish value=] from |length|,
+ then set |length| to the result's value.
+
+ 2. If |length| does not repreent the identifier 'none',
+ [=throw=] a {{TypeError}}.
- 2. Return a new {{CSSPerspective}} object
+ 3. Return a new {{CSSPerspective}} object
with its {{CSSPerspective/length}} internal slot
set to |length|,
and its {{CSSTransformComponent/is2D}} internal slot set to `false`.
@@ -5404,7 +5416,9 @@ while CSS <> values become {{CSSTransformComponent}}s.
::
1. Return a new {{CSSPerspective}} object,
whose {{CSSPerspective/length}} internal slot
- is set to the [=reify a numeric value|reification=] of the specified length
+ is set to the reification of the specified length
+ (see [=reify a numeric value=] if it is a length, and
+ [=reify an identifier=] if it is the keyword 'none')
and whose {{CSSTransformComponent/is2D}} internal slot
is `false`.