From 2b187a79e3cecbd865cdbe7ce6083eb29a2e32dd Mon Sep 17 00:00:00 2001
From: reffy-bot <>
Date: Sat, 14 Sep 2024 00:56:37 +0000
Subject: [PATCH] Update of ED report from new reffy run
Using reffy commit 17.2.5.
---
ed/algorithms/css-easing-2.json | 138 ++++---
ed/algorithms/css-flexbox-1.json | 2 +-
ed/algorithms/css-grid-1.json | 6 +-
ed/algorithms/css-grid-2.json | 6 +-
ed/algorithms/css-values-5.json | 45 ++-
ed/algorithms/webhid.json | 2 +-
ed/css/css-backgrounds-4.json | 22 +-
ed/css/css-values-5.json | 157 +++++++-
ed/dfns/css-backgrounds-4.json | 2 +-
ed/dfns/css-easing-2.json | 60 ++-
ed/dfns/css-values-5.json | 515 ++++++++++++++++++++----
ed/headings/css-easing-2.json | 25 +-
ed/headings/css-values-5.json | 118 ++++--
ed/idl/webhid.idl | 10 +-
ed/ids/css-backgrounds-4.json | 144 +++----
ed/ids/css-easing-2.json | 197 ++++-----
ed/ids/css-flexbox-1.json | 36 +-
ed/ids/css-fonts-4.json | 10 +-
ed/ids/css-grid-1.json | 44 +-
ed/ids/css-grid-2.json | 32 +-
ed/ids/css-pseudo-4.json | 2 +-
ed/ids/css-values-5.json | 668 +++++++++++++++++++++----------
ed/ids/webhid.json | 10 +-
ed/index.json | 530 ++++++++++++------------
ed/links/css-backgrounds-4.json | 15 +-
ed/links/css-easing-2.json | 6 -
ed/links/css-values-5.json | 369 +++++++++--------
ed/links/webhid.json | 3 +-
ed/refs/css-backgrounds-4.json | 4 +
ed/refs/css-easing-2.json | 8 -
ed/refs/css-values-5.json | 94 +++--
31 files changed, 2057 insertions(+), 1223 deletions(-)
diff --git a/ed/algorithms/css-easing-2.json b/ed/algorithms/css-easing-2.json
index a57cd7f65b39..ad8c4cc0970e 100644
--- a/ed/algorithms/css-easing-2.json
+++ b/ed/algorithms/css-easing-2.json
@@ -7,20 +7,20 @@
{
"name": "linear() canonicalization",
"href": "https://drafts.csswg.org/css-easing-2/#linear-canonicalization",
- "html": "To canonicalize a linear() function’s control points,\n perform the following: \n \n
After canonicalization,\n every control point has an input progress value,\n and the input progress values are monotonically non-decreasing\n along the list.
",
+ "html": "To canonicalize a linear() function’s control points,\n perform the following: \n \n After canonicalization,\n every control point has an input progress value,\n and the input progress values are monotonically non-decreasing\n along the list.
",
"rationale": ".algorithm",
"steps": [
{
- "html": "If the first control point lacks an input progress value,\nset its input progress value to 0.
"
+ "html": "If the first control point lacks an input progress value,\nset its input progress value to 0.
"
},
{
- "html": "If the last control point lacks an input progress value,\nset its input progress value to 1.
"
+ "html": "If the last control point lacks an input progress value,\nset its input progress value to 1.
"
},
{
- "html": "If any control point has an input progress value that is less than the input progress value of any preceding control point,\nset its input progress value to the largest input progress value of any preceding control point.
"
+ "html": "If any control point has an input progress value that is less than the input progress value of any preceding control point,\nset its input progress value to the largest input progress value of any preceding control point.
"
},
{
- "html": "If any control point still lacks an input progress value,\nthen for each contiguous run of such control points,\nset their input progress values so that they are evenly spaced\nbetween the preceding and following control points with input progress values.
"
+ "html": "If any control point still lacks an input progress value,\nthen for each contiguous run of such control points,\nset their input progress values so that they are evenly spaced\nbetween the preceding and following control points with input progress values.
"
}
]
},
@@ -48,13 +48,13 @@
"rationale": ".algorithm",
"steps": [
{
- "html": "Let s be the serialization,\nas a <number>,\nof the control point’s output progress value.
"
+ "html": "Let s be the serialization,\nas a <number>,\nof the control point’s output progress value.
"
},
{
- "html": "If the control point originally lacked an input progress value,\nreturn s.
"
+ "html": "If the control point originally lacked an input progress value,\nreturn s.
"
},
{
- "html": "Otherwise, append \" \" (U+0020 SPACE) to s,\nthen serialize the control point’s input progress value as a <percentage> and append it to s.
"
+ "html": "Otherwise, append \" \" (U+0020 SPACE) to s,\nthen serialize the control point’s input progress value as a <percentage> and append it to s.
"
},
{
"html": "Return s.
"
@@ -64,33 +64,33 @@
{
"name": "calculate linear easing output progress",
"href": "https://drafts.csswg.org/css-easing-2/#calculate-linear-easing-output-progress",
- "html": "To calculate linear easing output progress for a given linear easing function func,\n an input progress value inputProgress,\n and an optional before flag (defaulting to false),\n perform the following.\n It returns an output progress value.",
+ "html": "To calculate linear easing output progress for a given linear easing function func,\n an input progress value inputProgress,\n and an optional before flag (defaulting to false),\n perform the following.\n It returns an output progress value.",
"rationale": ".algorithm",
"steps": [
{
"html": "Let points be func’s control points.
"
},
{
- "html": "If points holds only a single item,\nreturn the output progress value of that item.
"
+ "html": "If points holds only a single item,\nreturn the output progress value of that item.
"
},
{
- "html": "If inputProgress matches the input progress value of the first point in points,\nand the before flag is true,\nreturn the first point’s output progress value.
"
+ "html": "If inputProgress matches the input progress value of the first point in points,\nand the before flag is true,\nreturn the first point’s output progress value.
"
},
{
- "html": "If inputProgress matches the input progress value of at least one point in points,\nreturn the output progress value of the last such point.
"
+ "html": "If inputProgress matches the input progress value of at least one point in points,\nreturn the output progress value of the last such point.
"
},
{
"html": "Otherwise, find two control points in points, A and B,\nwhich will be used for interpolation:",
"rationale": "if",
"steps": [
{
- "html": "If inputProgress is smaller\nthan any input progress value in points,\nlet A and B be the first two items in points.\nIf A and B have the same input progress value,\nreturn A’s output progress value.
"
+ "html": "If inputProgress is smaller\nthan any input progress value in points,\nlet A and B be the first two items in points.\nIf A and B have the same input progress value,\nreturn A’s output progress value.
"
},
{
- "html": "Otherwise, if inputProgress is larger\nthan any input progress value in points,\nlet A and B be the last two items in points.\nIf A and B have the same input progress value,\nreturn B’s output progress value.
"
+ "html": "Otherwise, if inputProgress is larger\nthan any input progress value in points,\nlet A and B be the last two items in points.\nIf A and B have the same input progress value,\nreturn B’s output progress value.
"
},
{
- "html": "Otherwise, let A be the last control point whose input progress value is smaller than inputProgress,\nand let B be the first control point whose input progress value is larger than inputProgress.
"
+ "html": "Otherwise, let A be the last control point whose input progress value is smaller than inputProgress,\nand let B be the first control point whose input progress value is larger than inputProgress.
"
}
]
},
@@ -100,94 +100,108 @@
]
},
{
- "html": "For input progress values less than zero,",
- "rationale": "if",
+ "name": "serialize a cubic-bezier() function",
+ "href": "https://drafts.csswg.org/css-easing-2/#serialize-a-cubic-bezier-function",
+ "html": "To serialize a cubic-bezier() function:",
+ "rationale": ".algorithm",
"steps": [
{
- "html": "If the x value of P1 is greater than zero, use\n a straight line that passes through P1 and P0 as the tangent.
"
+ "html": "Let s be the string \"cubic-bezier(\".
"
},
{
- "html": "Otherwise, if the x value of P2 is greater than\n zero, use a straight line that passes through P2 and P0 as the tangent.
"
+ "html": "Serialize the function’s four arguments as <number>s, concatenate the results using the separator \", \",\nand append the result to s.
"
},
{
- "html": "Otherwise, let the output progress value be zero for all input progress values in the range [-∞, 0).
"
+ "html": "Append \")\" to s, and return it.
"
}
]
},
{
- "html": "For input progress values greater than one,",
- "rationale": "if",
+ "name": "calculate cubic Bézier easing output progress",
+ "href": "https://drafts.csswg.org/css-easing-2/#calculate-cubic-bzier-easing-output-progress",
+ "html": "To calculate cubic Bézier easing output progress for a given cubic Bézier easing function func and an input progress value inputProgress,\n perform the following.\n It returns an output progress value.",
+ "rationale": ".algorithm",
"steps": [
{
- "html": "If the x value of P2 is less than one, use\n a straight line that passes through P2 and P3 as the tangent.
"
+ "html": "Let p0 be the point (0,0), p1 be the point given by func’s first two arguments, p2 be the point given by func’s second two arguments,\nand p3 be the point (1,1).
"
},
{
- "html": "Otherwise, if the x value of P1 is less than\n one, use a straight line that passes through P1 and P3 as the tangent.
"
+ "html": "If inputProgress is within the range [0,1] (inclusive),\nreturn the y value\ncorresponding to inputProgress as an x value\nfor the cubic Bézier curve\ndefined as having p0 and p3 as endpoints,\nand p1 and p2 as control points.
\n The evaluation of this curve is covered in many sources,\nsuch as [FUND-COMP-GRAPHICS].
"
},
{
- "html": "Otherwise, let the output progress value be one for all input progress values in the range (1, ∞].
"
+ "html": "If inputProgress is less than 0,\nlet t1 be p0.",
+ "rationale": "if",
+ "steps": [
+ {
+ "html": "If the x value of p1 is greater than 0,\nlet t2 be p1.
"
+ },
+ {
+ "html": "Otherwise, if the x value of p2 is greater than 0,\nlet t2 be p2.
"
+ },
+ {
+ "html": "Otherwise, return 0.
"
+ }
+ ],
+ "additional": [
+ {
+ "html": "If inputProgress is greater than 1,\nlet t2 be p3.",
+ "rationale": "if",
+ "steps": [
+ {
+ "html": "If the x value of p2 is less than 1,\nlet t1 be p2.
"
+ },
+ {
+ "html": "Otherwise, if the x value of p1 is less than 1,\nlet t1 be p1.
"
+ },
+ {
+ "html": "Otherwise, return 1.
"
+ }
+ ]
+ }
+ ]
}
]
},
{
- "name": "calculate step easing output progress",
- "href": "https://drafts.csswg.org/css-easing-2/#calculate-step-easing-output-progress",
- "html": "To calculate step easing output progress for a given step easing function func,\n an input progress value inputProgress,\n and an optional before flag (defaulting to false),\n perform the following.\n It returns an output progress value.",
+ "name": "serialize a steps() functions",
+ "href": "https://drafts.csswg.org/css-easing-2/#serialize-a-steps-functions",
+ "html": "To serialize a steps() functions:",
"rationale": ".algorithm",
"steps": [
{
- "html": "If the before flag is true, return 0.
"
+ "html": "Let s be the string \"steps(\".
"
},
{
- "html": "Let steps be func’s steps,\nand position be func’s step position.
"
+ "html": "Serialize the function’s steps,\nand append it to s.
"
},
{
- "html": "Divide the interval [-∞, ∞] into several segments,\neach with an associated value,\nas follows:
",
- "ignored": [
- "[-∞, 0] has the value 0. (1, ∞] has the value 1. [0, 1] is divided into steps intervals, [0, ...) to [..., 1) with their values assigned as defined for the position (see )."
- ]
+ "html": "If the function’s step position is end or jump-end,\nappend \")\" to s and return s.
"
},
{
- "html": "Return the associated value\nfor the interval that inputProgress is in.
"
+ "html": "Otherwise, append \", \" to s.\nSerialize the step position as a keyword,\nand append the result to s.\nAppend \")\" to s.\nReturn s.
"
}
]
},
{
- "html": "The output progress value is calculated from the input progress value and before flag as follows:",
- "rationale": "if",
+ "name": "calculate step easing output progress",
+ "href": "https://drafts.csswg.org/css-easing-2/#calculate-step-easing-output-progress",
+ "html": "To calculate step easing output progress for a given step easing function func,\n an input progress value inputProgress,\n and an optional before flag (defaulting to false),\n perform the following.\n It returns an output progress value.",
+ "rationale": ".algorithm",
"steps": [
{
- "html": "Calculate the current step as floor(input progress value × steps)
.
"
- },
- {
- "html": "If the step position property is one of:
\n \n increment current step by one.
"
- },
- {
- "html": "If both of the following conditions are true:
\n \n decrement current step by one.
"
- },
- {
- "html": "If input progress value ≥ 0 and current step < 0,\n let current step be zero.
"
- },
- {
- "html": "Calculate jumps based on the step position as follows:
\n \n - jump-start or jump-end\n
- \n
steps
\n - jump-none\n
- \n
steps - 1
\n - jump-both\n
- \n
steps + 1
\n
"
+ "html": "If the before flag is true, return 0.
"
},
{
- "html": "If input progress value ≤ 1 and current step > jumps, let current step be jumps.
"
+ "html": "Let steps be func’s steps,\nand position be func’s step position.
"
},
{
- "html": "The output progress value is current step / jumps
.
"
- }
- ]
- },
- {
- "html": "Step easing functions, whether they are specified using the steps() function or either of the step-start or step-end keywords, are serialized as follows:",
- "rationale": "if",
- "steps": [
- {
- "html": "If the step position is jump-end or end, serialize\n as steps(<integer>).
"
+ "html": "Divide the interval [-∞, ∞] into several segments,\neach with an associated value,\nas follows:
",
+ "ignored": [
+ "[-∞, 0) has the value 0. [1, ∞] has the value 1. [0, 1) is divided into steps half-open intervals, [0, ...) to [..., 1) with their values assigned as defined for the position (see )."
+ ]
},
{
- "html": "Otherwise, serialize as steps(<integer>, <step-position>).
"
+ "html": "Return the associated value\nfor the interval that inputProgress is in.
"
}
]
}
diff --git a/ed/algorithms/css-flexbox-1.json b/ed/algorithms/css-flexbox-1.json
index 348f38f7e2f7..5a798e3bdfbb 100644
--- a/ed/algorithms/css-flexbox-1.json
+++ b/ed/algorithms/css-flexbox-1.json
@@ -68,7 +68,7 @@
"html": "Otherwise,\n\t\t\t\t\tif the used flex basis is content or depends on its available space,\n\t\t\t\t\tthe available main size is infinite,\n\t\t\t\t\tand the flex item’s inline axis is parallel to the main axis,\n\t\t\t\t\tlay the item out using the rules for a box in an orthogonal flow [CSS3-WRITING-MODES].\n\t\t\t\t\tThe flex base size is the item’s max-content main size."
},
{
- "html": "Otherwise,\n\t\t\t\t\tsize the item into the available space using its used flex basis in place of its main size,\n\t\t\t\t\ttreating a value of content as max-content.\n\t\t\t\t\tIf a cross size is needed to determine the main size (e.g. when the flex item’s main size is in its block axis,\n\t\t\t\t\tor when it has a preferred aspect ratio)\n\t\t\t\t\tand the flex item’s cross size is auto and not definite,\n\t\t\t\t\tin this calculation use fit-content as the flex item’s cross size.\n\t\t\t\t\tThe flex base size is the item’s resulting main size."
+ "html": "Otherwise,\n\t\t\t\t\tsize the item into the available space using its used flex basis in place of its main size,\n\t\t\t\t\ttreating a value of content as max-content.\n\t\t\t\t\tIf a cross size is needed to determine the main size (e.g. when the flex item’s main size is in its block axis,\n\t\t\t\t\tor when it has a preferred aspect ratio)\n\t\t\t\t\tand the flex item’s cross size is auto and not definite,\n\t\t\t\t\tin this calculation use fit-content as the flex item’s cross size.\n\t\t\t\t\tThe flex base size is the item’s resulting main size."
}
]
},
diff --git a/ed/algorithms/css-grid-1.json b/ed/algorithms/css-grid-1.json
index 914c3089fa38..5b20837be54b 100644
--- a/ed/algorithms/css-grid-1.json
+++ b/ed/algorithms/css-grid-1.json
@@ -394,17 +394,17 @@
"rationale": "increase",
"steps": [
{
- "html": "Increase sizes to accommodate spanning items: Next, consider the items with a span of 2\n\t\t\t\t\tthat do not span a track with a flexible sizing function\n ,\n\t\t\t\t\ttreating a min track sizing function of auto as min-content/max-content when the grid container is being sized under a min/max-content constraint (respectively)\n :",
+ "html": "Increase sizes to accommodate spanning items: Next, consider the items with a span of 2\n\t\t\t\t\tthat do not span a track with a flexible sizing function\n ,\n\t\t\t\t\ttreating a min track sizing function of auto as min-content/max-content when the grid container is being sized under a min/max-content constraint (respectively)\n :",
"rationale": "for",
"steps": [
{
"html": "…"
},
{
- "html": "For content-based minimums: Next continue to increase the base size of tracks with\n\t\t\t\t\t\ta min track sizing function of min-content or max-content\n ,\n\t\t\t\t\t\tand tracks with a min track sizing function of auto if the grid container is being sized under a min-content constraint,\n by distributing extra space as needed\n\t\t\t\t\t\tto account for these items' min-content contributions."
+ "html": "For content-based minimums: Next continue to increase the base size of tracks with\n\t\t\t\t\t\ta min track sizing function of min-content or max-content\n ,\n\t\t\t\t\t\tand tracks with a min track sizing function of auto if the grid container is being sized under a min-content constraint,\n by distributing extra space as needed\n\t\t\t\t\t\tto account for these items' min-content contributions."
},
{
- "html": "For max-content minimums: Third continue to increase the base size of tracks with\n\t\t\t\t\t\ta min track sizing function of max-content\n ,\n\t\t\t\t\t\tand tracks with a max track sizing function of auto if the grid container is being sized under a max-content constraint,\n by distributing extra space as needed\n\t\t\t\t\t\tto account for these items' max-content contributions."
+ "html": "For max-content minimums: Third continue to increase the base size of tracks with\n\t\t\t\t\t\ta min track sizing function of max-content\n ,\n\t\t\t\t\t\tand tracks with a max track sizing function of auto if the grid container is being sized under a max-content constraint,\n by distributing extra space as needed\n\t\t\t\t\t\tto account for these items' max-content contributions."
}
]
}
diff --git a/ed/algorithms/css-grid-2.json b/ed/algorithms/css-grid-2.json
index b8c4ebbf60c4..ea49b1773bbb 100644
--- a/ed/algorithms/css-grid-2.json
+++ b/ed/algorithms/css-grid-2.json
@@ -233,7 +233,7 @@
},
{
"case": "For auto minimums:",
- "html": "If the track has an auto min track sizing function and the grid container is being sized\n\t\t\t\t\tunder a min-/max-content constraint,\n\t\t\t\t\tset the track’s base size to the maximum of its items’ limited min-/max-content contributions (respectively),\n\t\t\t\t\tfloored at zero.\n\t\t\t\t\tThe limited min-/max-content contribution of an item\n\t\t\t\t\tis (for this purpose) its min-/max-content contribution (accordingly),\n\t\t\t\t\tlimited by the max track sizing function (which could be the argument to a fit-content() track sizing function)\n\t\t\t\t\tif that is fixed and ultimately floored by its minimum contribution (defined below). \n Otherwise,\n\t\t\t\t\tset the track’s base size to the maximum of its items’ minimum contributions,\n\t\t\t\t\tfloored at zero.\n\t\t\t\t\tThe minimum contribution of an item\n\t\t\t\t\tis the smallest outer size it can have.\n\t\t\t\t\tSpecifically,\n\t\t\t\t\tif the item’s computed preferred size behaves as auto or depends on the size of its containing block in the relevant axis,\n\t\t\t\t\tits minimum contribution is\n\t\t\t\t\tthe outer size that would result from assuming\n\t\t\t\t\tthe item’s used minimum size as its preferred size;\n\t\t\t\t\telse the item’s minimum contribution is\n\t\t\t\t\tits min-content contribution.\n\t\t\t\t\tBecause the minimum contribution often depends\n\t\t\t\t\ton the size of the item’s content,\n\t\t\t\t\tit is considered a type of intrinsic size contribution.
"
+ "html": "If the track has an auto min track sizing function and the grid container is being sized\n\t\t\t\t\tunder a min-/max-content constraint,\n\t\t\t\t\tset the track’s base size to the maximum of its items’ limited min-/max-content contributions (respectively),\n\t\t\t\t\tfloored at zero.\n\t\t\t\t\tThe limited min-/max-content contribution of an item\n\t\t\t\t\tis (for this purpose) its min-/max-content contribution (accordingly),\n\t\t\t\t\tlimited by the max track sizing function (which could be the argument to a fit-content() track sizing function)\n\t\t\t\t\tif that is fixed and ultimately floored by its minimum contribution (defined below). \n Otherwise,\n\t\t\t\t\tset the track’s base size to the maximum of its items’ minimum contributions,\n\t\t\t\t\tfloored at zero.\n\t\t\t\t\tThe minimum contribution of an item\n\t\t\t\t\tis the smallest outer size it can have.\n\t\t\t\t\tSpecifically,\n\t\t\t\t\tif the item’s computed preferred size behaves as auto or depends on the size of its containing block in the relevant axis,\n\t\t\t\t\tits minimum contribution is\n\t\t\t\t\tthe outer size that would result from assuming\n\t\t\t\t\tthe item’s used minimum size as its preferred size;\n\t\t\t\t\telse the item’s minimum contribution is\n\t\t\t\t\tits min-content contribution.\n\t\t\t\t\tBecause the minimum contribution often depends\n\t\t\t\t\ton the size of the item’s content,\n\t\t\t\t\tit is considered a type of intrinsic size contribution.
"
},
{
"case": "For min-content maximums:",
@@ -342,7 +342,7 @@
"rationale": "resolve",
"steps": [
{
- "html": "Layout the grid following the § 12 Grid Layout Algorithm by using the fragmentation container’s inline size and assume unlimited block size.\n\t\t\tDuring this step all grid-row auto and fr values must be resolved."
+ "html": "Layout the grid following the § 12 Grid Layout Algorithm by using the fragmentation container’s inline size and assume unlimited block size.\n\t\t\tDuring this step all grid-row auto and fr values must be resolved."
},
{
"html": "Layout the grid container using the values resolved in the previous step."
@@ -351,7 +351,7 @@
"html": "If a grid area’s size changes due to fragmentation (do not include items that\n\t\t\tspan rows in this decision), increase the grid row size as necessary for rows that either: \n \n - have a content min track sizing function. \n
- are in a grid that does not have an explicit height and the grid row is flexible. \n
"
},
{
- "html": "If the grid height is auto, the height of the grid should be the sum of the final\n\t\t\trow sizes."
+ "html": "If the grid height is auto, the height of the grid should be the sum of the final\n\t\t\trow sizes."
},
{
"html": "If a grid area overflows the grid container due to margins being collapsed during\n\t\t\tfragmentation, extend the grid container to contain this grid area (this step is\n\t\t\tnecessary in order to avoid circular layout dependencies due to fragmentation)."
diff --git a/ed/algorithms/css-values-5.json b/ed/algorithms/css-values-5.json
index ca4cc2f0a40c..b16685c5ec65 100644
--- a/ed/algorithms/css-values-5.json
+++ b/ed/algorithms/css-values-5.json
@@ -7,7 +7,7 @@
{
"name": "/",
"href": "https://drafts.csswg.org/css-values-5/#typedef-request-url-modifier-crossorigin-modifier",
- "html": "The URL request modifier steps for this modifier given request req are:",
+ "html": "The URL request modifier steps for this modifier given request req are:",
"rationale": "set",
"steps": [
{
@@ -18,6 +18,29 @@
}
]
},
+ {
+ "html": "When serializing the specified value of a <position>:",
+ "rationale": ".switch",
+ "steps": [
+ {
+ "operation": "switch",
+ "steps": [
+ {
+ "case": "If only one component is specified:",
+ "html": ""
+ },
+ {
+ "case": "If two components are specified:",
+ "html": "\n - \n
Keywords are serialized as keywords.
\n - \n
<length-percentage>s are serialized as <length-percentage>s.
\n - \n
Components are serialized horizontal first, then vertical.
\n
"
+ },
+ {
+ "case": "If four components are specified:",
+ "html": "\n alternatively block-axis first, then inline-axis."
+ }
+ ]
+ }
+ ]
+ },
{
"name": "substitute an attr()",
"href": "https://drafts.csswg.org/css-values-5/#substitute-an-attr",
@@ -28,10 +51,10 @@
"html": "If the attr() function has a substitution value,\nreplace the attr() function by the substitution value.
"
},
{
- "html": "Otherwise, if the attr() function has a fallback value as its last argument,\nreplace the attr() function by the fallback value.\nIf there are any var() or attr() references in the fallback, substitute them as well.
"
+ "html": "Otherwise, if the attr() function has a fallback value as its last argument,\nreplace the attr() function by the fallback value.\nIf there are any var() or attr() references in the fallback, substitute them as well.
"
},
{
- "html": "Otherwise, the property containing the attr() function\nis invalid at computed-value time.
"
+ "html": "Otherwise, the property containing the attr() function\nis invalid at computed-value time.
"
}
]
},
@@ -40,16 +63,16 @@
"rationale": "if",
"steps": [
{
- "html": "The used value of the minimum calculation.
"
+ "html": "The used value of the minimum calculation.
"
},
{
- "html": "The used value of the maximum calculation.
"
+ "html": "The used value of the maximum calculation.
"
},
{
- "html": "The used value of the step calculation, if present,\nor null otherwise.
"
+ "html": "The used value of the step calculation, if present,\nor null otherwise.
"
},
{
- "html": "The <dashed-ident> part of the <random-caching-options>, if present,\nor null otherwise.
"
+ "html": "The <dashed-ident> part of the <random-caching-options>, if present,\nor null otherwise.
"
},
{
"html": "If per-element is specified in the <random-caching-options>,\na unique value per element or pseudo-element the function appears in.
"
@@ -64,7 +87,7 @@
"html": "The number of arguments to the function.
"
},
{
- "html": "The <dashed-ident> part of the <random-caching-options>, if present,\nor null otherwise.
"
+ "html": "The <dashed-ident> part of the <random-caching-options>, if present,\nor null otherwise.
"
},
{
"html": "If per-element is specified in the <random-caching-options>,\na unique value per element or pseudo-element the function appears in.
"
@@ -74,7 +97,7 @@
{
"name": "calc-size()/canonicalize for interpolation",
"href": "https://drafts.csswg.org/css-values-5/#calc-size-canonicalize-for-interpolation",
- "html": "To canonicalize for interpolation a calc-size() function: \n \n - If the calc-size basis is a calc-size() function itself\n
- \n
The calc-size basis of the outer function\nis replaced with that of the inner function,\nand the inner function’s calc-size calculation is substituted into the outer function’s calc-size calculation.
\n - Otherwise, if the calc-size basis is a <calc-sum> whose type matches <length> (no percentage present)\n
- \n
Replace the basis with any,\nand the original basis is substituted into the calc-size calculation.
\n - Otherwise, if the calc-size basis is any other <calc-sum> (contains a percentage)\n
- \n
Replace the basis with 100% and the original basis is de-percentified,\nthen substituted into the calc-size calculation.
\n
\n (The above is performed recursively, if necessary.)
\n If any substitute into a calc-size calculation returns failure,\n\tthe entire operation immediately returns failure.
",
+ "html": "To canonicalize for interpolation a calc-size() function: \n \n - If the calc-size basis is a calc-size() function itself\n
- \n
The calc-size basis of the outer function\nis replaced with that of the inner function,\nand the inner function’s calc-size calculation is substituted into the outer function’s calc-size calculation.
\n - Otherwise, if the calc-size basis is a <calc-sum> whose type matches <length> (no percentage present)\n
- \n
Replace the basis with any,\nand the original basis is substituted into the calc-size calculation.
\n - Otherwise, if the calc-size basis is any other <calc-sum> (contains a percentage)\n
- \n
Replace the basis with 100% and the original basis is de-percentified,\nthen substituted into the calc-size calculation.
\n
\n (The above is performed recursively, if necessary.)
\n If any substitute into a calc-size calculation returns failure,\n\t\tthe entire operation immediately returns failure.
",
"rationale": ".switch",
"steps": [
{
@@ -103,7 +126,7 @@
"rationale": ".algorithm",
"steps": [
{
- "html": "Replace every instance of a <percentage-token> in calc with (size * N),\nwhere N is the percentage’s value divided by 100.\nReturn calc.
"
+ "html": "Replace every instance of a <percentage-token> in calc with (size * N),\nwhere N is the percentage’s value divided by 100.\nReturn calc.
"
}
]
},
@@ -125,7 +148,7 @@
]
},
{
- "html": "Two calc-size() functions can be interpolated if\n(after being canonicalized for interpolation):",
+ "html": "Two calc-size() functions can be interpolated if\n\t(after being canonicalized for interpolation):",
"rationale": ".switch",
"steps": [
{
diff --git a/ed/algorithms/webhid.json b/ed/algorithms/webhid.json
index 0386c52f1c20..0f8a9a96418f 100644
--- a/ed/algorithms/webhid.json
+++ b/ed/algorithms/webhid.json
@@ -495,7 +495,7 @@
"html": "Let document be null
."
},
{
- "html": "If this's relevant global object is a window
object,\n set document to this's relevant global object's\n associated Document."
+ "html": "If this's relevant global object is a DedicatedWorkerGlobalScope
\n or window
object, set document to this's\n relevant global object's associated Document."
},
{
"html": "If this's relevant global object is a ServiceWorkerGlobalScope
\n object and the associated service worker client is\n window client, set document to the\n associated Document of the associated service worker client's\n global object."
diff --git a/ed/css/css-backgrounds-4.json b/ed/css/css-backgrounds-4.json
index e56e0fc3dd42..5769013157b0 100644
--- a/ed/css/css-backgrounds-4.json
+++ b/ed/css/css-backgrounds-4.json
@@ -224,13 +224,13 @@
"name": "background-position",
"href": "https://drafts.csswg.org/css-backgrounds-4/#propdef-background-position",
"value": "#",
- "initial": "see individual properties",
- "appliesTo": "see individual properties",
- "inherited": "see individual properties",
- "percentages": "see individual properties",
- "computedValue": "see individual properties",
- "animationType": "see individual properties",
+ "initial": "0% 0%",
+ "appliesTo": "all elements",
+ "inherited": "no",
+ "percentages": "refer to size of background positioning area minus size of background image; see text",
+ "computedValue": "a list, each item a pair of offsets (horizontal and vertical) from the top left origin, each offset given as a computed value",
"canonicalOrder": "per grammar",
+ "animationType": "repeatable list",
"styleDeclaration": [
"background-position",
"backgroundPosition"
@@ -354,9 +354,10 @@
},
{
"name": "",
+ "prose": "Its value is given as a comma-separated list of values, which are interpreted as values with the resized background image as the alignment subject and the background positioning area as the alignment container.",
"href": "https://drafts.csswg.org/css-backgrounds-4/#typedef-bg-position",
"type": "type",
- "value": "[ [ left | center | right | top | bottom | start | end | ] | [ left | center | right | x-start | x-end | ] [ top | center | bottom | y-start | y-end | ] | [ center | [ left | right | x-start | x-end ] ? ] && [ center | [ top | bottom | y-start | y-end ] ? ] | [ center | [ start | end ] ? ] [ center | [ start | end ] ? ] ]"
+ "value": " |"
},
{
"name": "",
@@ -387,5 +388,12 @@
}
]
}
+ ],
+ "warnings": [
+ {
+ "msg": "Missing definition",
+ "name": "",
+ "value": "[ [ left | center | right ] && [ [ top | bottom ] ] | [ [ left | right ] ] && [ top | center | bottom ] ]"
+ }
]
}
diff --git a/ed/css/css-values-5.json b/ed/css/css-values-5.json
index 5d3d74ff3bf6..977793757d02 100644
--- a/ed/css/css-values-5.json
+++ b/ed/css/css-values-5.json
@@ -25,7 +25,7 @@
},
{
"name": "allow-keywords",
- "prose": "Two values can be interpolated if one of them is an and the other is a . This is done by treating the keyword as though it is calc-size(keyword, size) and applying the rules in § 9.3 Interpolating calc-size(). In other cases, an still cannot be interpolated.",
+ "prose": "Two values can be interpolated if one of them is an and the other is a . This is done by treating the keyword as though it is calc-size(keyword, size) and applying the rules in § 10.3 Interpolating calc-size(). In other cases, an still cannot be interpolated.",
"href": "https://drafts.csswg.org/css-values-5/#valdef-interpolate-size-allow-keywords",
"type": "value",
"value": "allow-keywords"
@@ -155,6 +155,31 @@
}
]
},
+ {
+ "name": "",
+ "prose": "The value specifies the position of an alignment subject (e.g. a background image) inside an alignment container (e.g. its background positioning area) as a pair of offsets between the specified edges (defaulting to the left and top). Its syntax is:",
+ "href": "https://drafts.csswg.org/css-values-5/#typedef-position",
+ "type": "type",
+ "value": " | | "
+ },
+ {
+ "name": "",
+ "href": "https://drafts.csswg.org/css-values-5/#typedef-position-one",
+ "type": "type",
+ "value": "[ left | center | right | top | bottom | x-start | x-end | y-start | y-end | block-start | block-end | inline-start | inline-end | ]"
+ },
+ {
+ "name": "",
+ "href": "https://drafts.csswg.org/css-values-5/#typedef-position-two",
+ "type": "type",
+ "value": "[ [ left | center | right | x-start | x-end ] && [ top | center | bottom | y-start | y-end ] | [ left | center | right | x-start | x-end | ] [ top | center | bottom | y-start | y-end | ] | [ block-start | center | block-end ] && [ inline-start | center | inline-end ] | [ start | center | end ]{2} ]"
+ },
+ {
+ "name": "",
+ "href": "https://drafts.csswg.org/css-values-5/#typedef-position-four",
+ "type": "type",
+ "value": "[ [ [ left | right | x-start | x-end ] ] && [ [ top | bottom | y-start | y-end ] ] | [ [ block-start | block-end ] ] && [ [ inline-start | inline-end ] ] | [ [ start | end ] ]{2} ]"
+ },
{
"name": "progress()",
"prose": "The progress() functional notation returns a value representing the position of one calculation (the progress value) between two other calculations (the progress start value and progress end value). The argument calculations can resolve to any , , or , but must have a consistent type or else the function is invalid. The result will be a , made consistent with the consistent type of the arguments.",
@@ -196,7 +221,7 @@
"prose": "The