@webref/css 4.2.3 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CSS.json CHANGED
@@ -67,6 +67,33 @@
67
67
  },
68
68
  "descriptors": {},
69
69
  "valuespaces": {
70
+ "<uri>": {
71
+ "prose": "URI values (Uniform Resource Identifiers, see [RFC3986], which includes URLs, URNs, etc) in this specification are denoted by <uri>. The functional notation used to designate URIs in property values is \"url()\", as in:"
72
+ },
73
+ "<Counters>": {
74
+ "prose": "Counters are denoted by case-sensitive identifiers (see the counter-increment and counter-reset properties). To refer to the value of a counter, the notation counter(<identifier>) or 'counter(<identifier>, <'list-style-type>), with optional white space separating the tokens, is used. The default style is decimal."
75
+ },
76
+ "<counter(<identifier>)>": {
77
+ "prose": "Counters are denoted by case-sensitive identifiers (see the counter-increment and counter-reset properties). To refer to the value of a counter, the notation counter(<identifier>) or 'counter(<identifier>, <'list-style-type>), with optional white space separating the tokens, is used. The default style is decimal."
78
+ },
79
+ "<counters(<identifier>, <string>)>": {
80
+ "prose": "To refer to a sequence of nested counters of the same name, the notation is counters(<identifier>, <string>) or 'counters(<identifier>, <string>, <'list-style-type>) with optional white space separating the tokens."
81
+ },
82
+ "<Strings>": {
83
+ "prose": "Strings can either be written with double quotes or with single quotes. Double quotes cannot occur inside double quotes, unless escaped (e.g., as \\\" or as \\22). Analogously for single quotes (e.g., \"\\'\" or \"\\27\")."
84
+ },
85
+ "<margin-width>": {
86
+ "prose": "The properties defined in this section refer to the <margin-width> value type, which may take one of the following values:"
87
+ },
88
+ "<padding-width>": {
89
+ "prose": "The properties defined in this section refer to the <padding-width> value type, which may take one of the following values:"
90
+ },
91
+ "<border-width>": {
92
+ "prose": "The border width properties specify the width of the border area. The properties defined in this section refer to the <border-width> value type, which may take one of the following values:"
93
+ },
94
+ "<border-style>": {
95
+ "prose": "The border style properties specify the line style of a box’s border (solid, double, dashed, etc.). The properties defined in this section refer to the <border-style> value type, which may take one of the following values:"
96
+ },
70
97
  "<shape>": {
71
98
  "prose": "In CSS 2, the only valid <shape> value is: rect(<top>, <right>, <bottom>, <left>) where <top> and <bottom> specify offsets from the top border edge of the box, and <right>, and <left> specify offsets from the left border edge of the box. Authors should separate offset values with commas. User agents must support separation with commas, but may also support separation without commas (but not a combination), because a previous revision of this specification was ambiguous in this respect. <top>, <right>, <bottom>, and <left> may either have a <length> value or auto. Negative lengths are permitted. The value auto means that a given edge of the clipping region will be the same as the edge of the element’s generated border box (i.e., auto means the same as 0 for <top> and <left>, the same as the used value of the height plus the sum of vertical padding and border widths for <bottom>, and the same as the used value of the width plus the sum of the horizontal padding and border widths for <right>, such that four auto values result in the clipping region being the same as the element’s border box). When coordinates are rounded to pixel coordinates, care should be taken that no pixels remain visible when <left> and <right> have the same value (or <top> and <bottom> have the same value), and conversely that no pixels within the element’s border box remain hidden when these values are auto."
72
99
  }
@@ -40,14 +40,14 @@
40
40
  "<single-animation-composition>": {
41
41
  "value": "replace | add | accumulate"
42
42
  },
43
- "<single-animation-timeline>": {
44
- "value": "auto | none | <timeline-name>"
45
- },
46
43
  "<timeline-name>": {
47
44
  "value": "<custom-ident> | <string>"
48
45
  },
49
46
  "<single-animation>": {
50
47
  "value": "<time> || <easing-function> || <time> || <single-animation-iteration-count> || <single-animation-direction> || <single-animation-fill-mode> || <single-animation-play-state> || [ none | <keyframes-name> ] || <single-animation-timeline>"
48
+ },
49
+ "<single-animation-timeline>": {
50
+ "value": "auto | none | <timeline-name>"
51
51
  }
52
52
  }
53
53
  }
@@ -156,6 +156,9 @@
156
156
  "<single-animation>": {
157
157
  "value": "<time> || <easing-function> || <time> || <single-animation-iteration-count> || <single-animation-direction> || <single-animation-fill-mode> || <single-animation-play-state> || [ none | <keyframes-name> ]"
158
158
  },
159
+ "<AnimationEvent(type, animationEventInitDict)>": {
160
+ "prose": "AnimationEvent(type, animationEventInitDict) is an event constructor."
161
+ },
159
162
  "<keyframes-name>": {
160
163
  "value": "<custom-ident> | <string>"
161
164
  },
@@ -6,6 +6,12 @@
6
6
  "properties": {},
7
7
  "descriptors": {},
8
8
  "valuespaces": {
9
+ "<scope-start>": {
10
+ "prose": "The <scope-start> is a <forgiving-selector-list>. Each element matched by <scope-start> is a scoping element, creating a scope with itself as the scoping root."
11
+ },
12
+ "<scope-end>": {
13
+ "prose": "The <scope-end> is a <forgiving-selector-list> that is scoped by the <scope-start> selector, with the scoping roots as :scope elements. Each element matched by <scope-end> is a scoping limit. The scoping limit elements define the lower bounds of a scope, so that scoped selectors are not able to match any elements nested within them."
14
+ },
9
15
  "<selector-scope>": {
10
16
  "value": "( <scope-start> [/ <scope-end>]? )"
11
17
  }
package/css-color-5.json CHANGED
@@ -35,7 +35,7 @@
35
35
  "value": "color-mix( <color-interpolation-method> , [ <color> && <percentage [0,100]>? ]#{2})"
36
36
  },
37
37
  "<rgb()>": {
38
- "value": "rgb( [<percentage> | none]{3} [ / [<alpha-value> | none] ]? ) | rgb( [<number> | none]{3} [ / [<alpha-value> | none] ]? rgb( [ from <color> ]? [ <number> | <percentage> | none]{3} [ / [<alpha-value> | none] ]? )"
38
+ "value": "rgb( [<percentage> | none]{3} [ / [<alpha-value> | none] ]? ) | rgb( [<number> | none]{3} [ / [<alpha-value> | none] ]? ) | rgb( [ from <color> ]? [ <number> | <percentage> | none]{3} [ / [<alpha-value> | none] ]? )"
39
39
  },
40
40
  "<alpha-value>": {
41
41
  "value": "<number> | <percentage>"
package/css-color.json CHANGED
@@ -36,8 +36,30 @@
36
36
  "descriptors": {},
37
37
  "valuespaces": {
38
38
  "<color>": {
39
+ "prose": "Colors in CSS are represented by the <color> type:",
39
40
  "value": "<absolute-color-base> | currentcolor | <system-color> | <device-cmyk()>"
40
41
  },
42
+ "<rgba()>": {
43
+ "prose": "Also, an rgba() legacy color syntax also exists, with an identical grammar and behavior to rgb()."
44
+ },
45
+ "<hex-color>": {
46
+ "prose": "The syntax of a <hex-color> is a <hash-token> token whose value consists of 3, 4, 6, or 8 hexadecimal digits. In other words, a hex color is written as a hash character, \"#\", followed by some number of digits 0-9 or letters a-f (the case of the letters doesn’t matter - #00ff00 is identical to #00FF00)."
47
+ },
48
+ "<named-color>": {
49
+ "prose": "CSS defines a large set of named colors, so that common colors can be written and read more easily. A <named-color> is written as an <ident>, accepted anywhere a <color> is. As usual for CSS-defined <ident>s, all of these keywords are ASCII case-insensitive."
50
+ },
51
+ "<system-color>": {
52
+ "prose": "However, in forced colors mode, most colors on the page are forced into a restricted, user-chosen palette. The <system-color> keywords expose these user-chosen colors so that the rest of the page can integrate with this restricted palette."
53
+ },
54
+ "<hsla()>": {
55
+ "prose": "Also, an hsla() legacy color syntax also exists, with an identical grammar and behavior to hsl()."
56
+ },
57
+ "<deprecated-color>": {
58
+ "prose": "The deprecated system colors are represented as the <deprecated-color> sub-type, and are defined as:"
59
+ },
60
+ "<quirky-color>": {
61
+ "prose": "When CSS is being parsed in quirks mode, <quirky-color> is a type of <color> that is only valid in certain properties:"
62
+ },
41
63
  "<absolute-color-base>": {
42
64
  "value": "<hex-color> | <named-color> | transparent | <rgb()> | <rgba()> | <hsl()> | <hsla()> | <hwb()> | <lab()> | <lch()> | <oklab()> | <oklch()> | <color()>"
43
65
  },
@@ -107,6 +107,12 @@
107
107
  ]
108
108
  },
109
109
  "valuespaces": {
110
+ "<size-feature>": {
111
+ "prose": "A container size query allows querying the size of the query container’s principal box. It is a boolean combination of individual size features (<size-feature>) that each query a single, specific dimensional feature of the query container. The syntax of a <size-feature> is the same as for a media feature: a feature name, a comparator, and a value. [mediaqueries-5] The boolean syntax and logic combining size features into a size query is the same as for CSS feature queries. (See @supports. [CSS-CONDITIONAL-3])"
112
+ },
113
+ "<style-feature>": {
114
+ "prose": "A container style query allows querying the computed values of the query container. It is a boolean combination of individual style features (<style-feature>) that each query a single, specific property of the query container. The syntax of a <style-feature> is the same as for a declaration [CSS-SYNTAX-3], and its query is true if the computed value of the given property on the query container matches the given value (which is also computed with respect to the query container), unknown if the property or its value is invalid or unsupported, and false otherwise. The boolean syntax and logic combining style features into a style query is the same as for CSS feature queries. (See @supports. [CSS-CONDITIONAL-3])"
115
+ },
110
116
  "<container-name>": {
111
117
  "value": "<custom-ident>"
112
118
  },
package/css-content.json CHANGED
@@ -95,12 +95,19 @@
95
95
  },
96
96
  "descriptors": {},
97
97
  "valuespaces": {
98
- "<quote>": {
99
- "value": "open-quote | close-quote | no-open-quote | no-close-quote"
98
+ "<content-replacement>": {
99
+ "value": "<image>"
100
+ },
101
+ "<content-list>": {
102
+ "value": "[ <string> | contents | <image> | <counter> | <quote> | <target> | <leader()> ]+"
100
103
  },
101
104
  "<leader()>": {
102
105
  "value": "leader( <leader-type> )"
103
106
  },
107
+ "<image>": {},
108
+ "<quote>": {
109
+ "value": "open-quote | close-quote | no-open-quote | no-close-quote"
110
+ },
104
111
  "<leader-type>": {
105
112
  "value": "dotted | solid | space | <string>"
106
113
  },
@@ -121,12 +128,6 @@
121
128
  },
122
129
  "<content()>": {
123
130
  "value": "content( [ text | before | after | first-letter | marker ]? )"
124
- },
125
- "<content-replacement>": {
126
- "value": "<image>"
127
- },
128
- "<content-list>": {
129
- "value": "[ <string> | contents | <image> | <counter> | <quote> | <target> | <leader()> ]+"
130
131
  }
131
132
  }
132
133
  }
@@ -87,6 +87,9 @@
87
87
  ]
88
88
  },
89
89
  "valuespaces": {
90
+ "<counter-style-name>": {
91
+ "prose": "<counter-style-name> is a <custom-ident> that is not an ASCII case-insensitive match for none. The <counter-style-name> is a tree-scoped name."
92
+ },
90
93
  "<symbol>": {
91
94
  "value": "<string> | <image> | <custom-ident>"
92
95
  },
package/css-easing.json CHANGED
@@ -6,23 +6,35 @@
6
6
  "properties": {},
7
7
  "descriptors": {},
8
8
  "valuespaces": {
9
- "<cubic-bezier()>": {
10
- "value": "cubic-bezier(<number [0,1]>, <number>, <number [0,1]>, <number>)"
11
- },
12
- "<steps()>": {
13
- "value": "steps(<integer>[, <step-position> ]?)"
14
- },
15
9
  "<easing-function>": {
16
10
  "value": "linear | <cubic-bezier-easing-function> | <step-easing-function>"
17
11
  },
12
+ "<linear-spline()>": {
13
+ "value": "linear-spline(<linear-spline-stop-list>)"
14
+ },
18
15
  "<cubic-bezier-easing-function>": {
19
16
  "value": "ease | ease-in | ease-out | ease-in-out | cubic-bezier(<number [0,1]>, <number>, <number [0,1]>, <number>)"
20
17
  },
18
+ "<cubic-bezier()>": {
19
+ "value": "cubic-bezier(<number [0,1]>, <number>, <number [0,1]>, <number>)"
20
+ },
21
21
  "<step-easing-function>": {
22
- "value": "step-start | step-end | steps(<integer>[, <step-position>]?)"
22
+ "value": "step-start | step-end | steps(<integer>[, <step-position>]?) <step-position>"
23
23
  },
24
24
  "<step-position>": {
25
25
  "value": "jump-start | jump-end | jump-none | jump-both | start | end"
26
+ },
27
+ "<steps()>": {
28
+ "value": "steps(<integer>[, <step-position> ]?)"
29
+ },
30
+ "<linear-spline-stop-list>": {
31
+ "value": "[ <linear-spline-stop> ]#"
32
+ },
33
+ "<linear-spline-stop>": {
34
+ "value": "<number> && <linear-spline-stop-length>?"
35
+ },
36
+ "<linear-spline-stop-length>": {
37
+ "value": "<percentage>{1,2}"
26
38
  }
27
39
  }
28
40
  }
@@ -6,6 +6,9 @@
6
6
  "properties": {},
7
7
  "descriptors": {},
8
8
  "valuespaces": {
9
+ "<extension-name>": {
10
+ "prose": "All extensions defined in this specification use a common syntax for defining their ”names”: the <extension-name> production. An <extension-name> is any identifier that starts with two dashes (U+002D HYPHEN-MINUS), like --foo, or even exotic names like -- or ------. The CSS language will never use identifiers of this form for any language-defined purpose, so it’s safe to use them for author-defined purposes without ever having to worry about colliding with CSS-defined names."
11
+ },
9
12
  "<custom-selector>": {
10
13
  "value": "<custom-arg>? : <extension-name> [ ( <custom-arg>+#? ) ]? ;"
11
14
  },
package/css-fonts.json CHANGED
@@ -524,6 +524,18 @@
524
524
  ]
525
525
  },
526
526
  "valuespaces": {
527
+ "<family-name>": {
528
+ "prose": "The name of a font family, such as Helvetica or Verdana in the previous example."
529
+ },
530
+ "<generic-family>": {
531
+ "prose": "Each <generic-family> keyword represents a generic font choice, and behaves as an alias for one or more locally-installed fonts belonging to the specified generic font category. A <generic-family> can thus be used as a reliable fallback for when an author’s more specific font choices are not available. Authors are encouraged to append a generic font family as a last alternative for improved robustness. Note that <generic-family> keywords cannot be quoted (otherwise they are interpreted as a <family-name>). The set of generic family keywords is defined in § 2.1.3 Generic font families."
532
+ },
533
+ "<palette-identifier>": {
534
+ "prose": "This value identifies an CSS-defined palette to use. Users can define a palette by using the @font-palette-values rule. If no applicable @font-palette-values rule is present, this value behaves as normal. <palette-identifier> is parsed as a <dashed-ident>."
535
+ },
536
+ "<integer>": {
537
+ "prose": "Identifies a (zero-based) numerical palette index within the font."
538
+ },
527
539
  "<font-weight-absolute>": {
528
540
  "value": "[normal | bold | <number [1,1000]>]"
529
541
  },
@@ -583,36 +595,6 @@
583
595
  },
584
596
  "<feature-tag-value>": {
585
597
  "value": "<string> [ <integer> | on | off ]?"
586
- },
587
- "<stylistic()>": {
588
- "value": "stylistic(<feature-value-name>)"
589
- },
590
- "<styleset()>": {
591
- "value": "styleset(<feature-value-name>#)"
592
- },
593
- "<character-variant()>": {
594
- "value": "character-variant(<feature-value-name>#)"
595
- },
596
- "<swash()>": {
597
- "value": "swash(<feature-value-name>)"
598
- },
599
- "<ornaments()>": {
600
- "value": "ornaments(<feature-value-name>)"
601
- },
602
- "<annotation()>": {
603
- "value": "annotation(<feature-value-name>)"
604
- },
605
- "<family-name>": {
606
- "prose": "The name of a font family, such as Helvetica or Verdana in the previous example."
607
- },
608
- "<generic-family>": {
609
- "prose": "Each <generic-family> keyword represents a generic font choice, and behaves as an alias for one or more locally-installed fonts belonging to the specified generic font category. A <generic-family> can thus be used as a reliable fallback for when an author’s more specific font choices are not available. Authors are encouraged to append a generic font family as a last alternative for improved robustness. Note that <generic-family> keywords cannot be quoted (otherwise they are interpreted as a <family-name>). The set of generic family keywords is defined in § 2.1.3 Generic font families."
610
- },
611
- "<palette-identifier>": {
612
- "prose": "This value identifies an CSS-defined palette to use. Users can define a palette by using the @font-palette-values rule. If no applicable @font-palette-values rule is present, this value behaves as normal. <palette-identifier> is parsed as a <dashed-ident>."
613
- },
614
- "<integer>": {
615
- "prose": "Identifies a (zero-based) numerical palette index within the font."
616
598
  }
617
599
  }
618
600
  }
package/css-grid.json CHANGED
@@ -231,6 +231,12 @@
231
231
  },
232
232
  "descriptors": {},
233
233
  "valuespaces": {
234
+ "<repeat()>": {
235
+ "prose": "The repeat() notation represents a repeated fragment of the track list, allowing a large number of columns or rows that exhibit a recurring pattern to be written in a more compact form."
236
+ },
237
+ "<flex>": {
238
+ "prose": "A flexible length or <flex> is a dimension with the fr unit, which represents a fraction of the leftover space in the grid container. Tracks sized with fr units are called flexible tracks as they flex in response to leftover space similar to how flex items with a zero base size fill space in a flex container."
239
+ },
234
240
  "<track-list>": {
235
241
  "value": "[ <line-names>? [ <track-size> | <track-repeat> ] ]+ <line-names>?"
236
242
  },
@@ -275,9 +281,6 @@
275
281
  },
276
282
  "<grid-line>": {
277
283
  "value": "auto | <custom-ident> | [ <integer> && <custom-ident>? ] | [ span && [ <integer> || <custom-ident> ] ]"
278
- },
279
- "<fit-content()>": {
280
- "value": "fit-content( <length-percentage> )"
281
284
  }
282
285
  }
283
286
  }
@@ -0,0 +1,13 @@
1
+ {
2
+ "spec": {
3
+ "title": "CSS Custom Highlight API Module Level 1",
4
+ "url": "https://drafts.csswg.org/css-highlight-api-1/"
5
+ },
6
+ "properties": {},
7
+ "descriptors": {},
8
+ "valuespaces": {
9
+ "<custom-highlight-name>": {
10
+ "prose": "The ::highlight(<custom-highlight-name>) pseudo-element (also known as the custom highlight pseudo-element) represents the portion of a document that is being contained or partially contained in all the ranges of the registered custom highlight with the custom highlight name <custom-highlight-name>, if any. <custom-highlight-name> must be a valid CSS <ident-token>."
11
+ }
12
+ }
13
+ }
package/css-images-4.json CHANGED
@@ -52,6 +52,21 @@
52
52
  },
53
53
  "descriptors": {},
54
54
  "valuespaces": {
55
+ "<type( <string> )>": {
56
+ "prose": "A type( <string> ) function (optional), specifying the image’s MIME type in the <string>."
57
+ },
58
+ "<repeating-linear-gradient()>": {
59
+ "prose": "In addition to linear-gradient(), radial-gradient(), and conic-gradient(), this specification defines repeating-linear-gradient(), repeating-radial-gradient(), and repeating-conic-gradient() values. These notations take the same values and are interpreted the same as their respective non-repeating siblings defined previously."
60
+ },
61
+ "<repeating-radial-gradient()>": {
62
+ "prose": "In addition to linear-gradient(), radial-gradient(), and conic-gradient(), this specification defines repeating-linear-gradient(), repeating-radial-gradient(), and repeating-conic-gradient() values. These notations take the same values and are interpreted the same as their respective non-repeating siblings defined previously."
63
+ },
64
+ "<repeating-conic-gradient()>": {
65
+ "prose": "In addition to linear-gradient(), radial-gradient(), and conic-gradient(), this specification defines repeating-linear-gradient(), repeating-radial-gradient(), and repeating-conic-gradient() values. These notations take the same values and are interpreted the same as their respective non-repeating siblings defined previously."
66
+ },
67
+ "<-webkit-image-set()>": {
68
+ "prose": "Implementations must accept -webkit-image-set() as a parse-time alias of image-set(). (It’s a valid value, with identical arguments to image-set(), and is turned into image-set() during parsing.)"
69
+ },
55
70
  "<image>": {
56
71
  "value": "<url> | <image()> | <image-set()> | <cross-fade()> | <element()> | <gradient>"
57
72
  },
package/css-images.json CHANGED
@@ -67,8 +67,14 @@
67
67
  },
68
68
  "descriptors": {},
69
69
  "valuespaces": {
70
- "<image>": {
71
- "value": "<url> | <gradient>"
70
+ "<size>": {
71
+ "prose": "Both circle and ellipse gradients accept the following keywords as their <size>:"
72
+ },
73
+ "<repeating-linear-gradient()>": {
74
+ "prose": "In addition to linear-gradient() and radial-gradient(), this specification defines repeating-linear-gradient() and repeating-radial-gradient() values. These notations take the same values and are interpreted the same as their respective non-repeating siblings defined previously."
75
+ },
76
+ "<repeating-radial-gradient()>": {
77
+ "prose": "In addition to linear-gradient() and radial-gradient(), this specification defines repeating-linear-gradient() and repeating-radial-gradient() values. These notations take the same values and are interpreted the same as their respective non-repeating siblings defined previously."
72
78
  },
73
79
  "<gradient>": {
74
80
  "value": "<linear-gradient()> | <repeating-linear-gradient()> | <radial-gradient()> | <repeating-radial-gradient()>"
@@ -90,12 +96,6 @@
90
96
  },
91
97
  "<linear-color-hint>": {
92
98
  "value": "<length-percentage>"
93
- },
94
- "<ending-shape>": {
95
- "prose": "Can be either circle or ellipse; determines whether the gradient’s ending shape is a circle or an ellipse, respectively. If <ending-shape> is omitted, the ending shape defaults to a circle if the <size> is a single <length>, and to an ellipse otherwise."
96
- },
97
- "<length>": {
98
- "prose": "Gives the radius of the circle explicitly. Negative values are invalid."
99
99
  }
100
100
  }
101
101
  }
package/css-lists.json CHANGED
@@ -127,6 +127,9 @@
127
127
  },
128
128
  "descriptors": {},
129
129
  "valuespaces": {
130
+ "<counter-name>": {
131
+ "prose": "Counters are referred to in CSS syntax using the <counter-name> type, which represents their name as a <custom-ident>. A <counter-name> name cannot match the keyword none; such an identifier is invalid as a <counter-name>."
132
+ },
130
133
  "<reversed-counter-name>": {
131
134
  "value": "reversed( <counter-name> )"
132
135
  },
package/css-masking.json CHANGED
@@ -325,6 +325,21 @@
325
325
  },
326
326
  "descriptors": {},
327
327
  "valuespaces": {
328
+ "<rect()>": {
329
+ "value": "rect( <top>, <right>, <bottom>, <left> )"
330
+ },
331
+ "<top>": {
332
+ "prose": "<top>, <right>, <bottom>, and <left> may either have a <length> value or auto. Negative lengths are permitted. The value auto means that a given edge of the clipping region will be the same as the edge of the element’s generated border box (i.e., auto means the same as 0 for <top> and <left>, the same as the used value of the height plus the sum of vertical padding and border widths for <bottom>, and the same as the used value of the width plus the sum of the horizontal padding and border widths for <right>, such that four auto values result in the clipping region being the same as the element’s border box)."
333
+ },
334
+ "<right>": {
335
+ "prose": "<top>, <right>, <bottom>, and <left> may either have a <length> value or auto. Negative lengths are permitted. The value auto means that a given edge of the clipping region will be the same as the edge of the element’s generated border box (i.e., auto means the same as 0 for <top> and <left>, the same as the used value of the height plus the sum of vertical padding and border widths for <bottom>, and the same as the used value of the width plus the sum of the horizontal padding and border widths for <right>, such that four auto values result in the clipping region being the same as the element’s border box)."
336
+ },
337
+ "<bottom>": {
338
+ "prose": "<top>, <right>, <bottom>, and <left> may either have a <length> value or auto. Negative lengths are permitted. The value auto means that a given edge of the clipping region will be the same as the edge of the element’s generated border box (i.e., auto means the same as 0 for <top> and <left>, the same as the used value of the height plus the sum of vertical padding and border widths for <bottom>, and the same as the used value of the width plus the sum of the horizontal padding and border widths for <right>, such that four auto values result in the clipping region being the same as the element’s border box)."
339
+ },
340
+ "<left>": {
341
+ "prose": "<top>, <right>, <bottom>, and <left> may either have a <length> value or auto. Negative lengths are permitted. The value auto means that a given edge of the clipping region will be the same as the edge of the element’s generated border box (i.e., auto means the same as 0 for <top> and <left>, the same as the used value of the height plus the sum of vertical padding and border widths for <bottom>, and the same as the used value of the width plus the sum of the horizontal padding and border widths for <right>, such that four auto values result in the clipping region being the same as the element’s border box)."
342
+ },
328
343
  "<clip-source>": {
329
344
  "value": "<url>"
330
345
  },
@@ -345,12 +360,6 @@
345
360
  },
346
361
  "<mask-layer>": {
347
362
  "value": "<mask-reference> || <position> [ / <bg-size> ]? ||<repeat-style> || <geometry-box> || [ <geometry-box> | no-clip ] || <compositing-operator> || <masking-mode>"
348
- },
349
- "<rect()>": {
350
- "value": "rect( <top>, <right>, <bottom>, <left> )"
351
- },
352
- "<url>": {
353
- "prose": "A URL reference to a mask element (for example url(commonmasks.svg#mask)) or to a CSS image."
354
363
  }
355
364
  }
356
365
  }
@@ -81,10 +81,10 @@
81
81
  "descriptors": {},
82
82
  "valuespaces": {
83
83
  "<snap-block()>": {
84
- "value": "snap-block( <length> , [ start | end | near ]? )"
84
+ "value": "snap-block()"
85
85
  },
86
86
  "<snap-inline()>": {
87
- "value": "snap-inline( <length> , [ left | right | near ]? )"
87
+ "value": "snap-inline()"
88
88
  }
89
89
  }
90
90
  }
package/css-page.json CHANGED
@@ -58,6 +58,9 @@
58
58
  ]
59
59
  },
60
60
  "valuespaces": {
61
+ "<page-size>": {
62
+ "prose": "A page size can be specified using one of the following media names. This is the equivalent of specifying size using length values. The definition of the media names comes from Media Standardized Names [PWGMSN]."
63
+ },
61
64
  "<page-selector-list>": {
62
65
  "value": "<page-selector>#"
63
66
  },
@@ -66,9 +69,6 @@
66
69
  },
67
70
  "<pseudo-page>": {
68
71
  "value": "':' [ left | right | first | blank ]"
69
- },
70
- "<page-size>": {
71
- "prose": "A page size can be specified using one of the following media names. This is the equivalent of specifying size using length values. The definition of the media names comes from Media Standardized Names [PWGMSN]."
72
72
  }
73
73
  }
74
74
  }
package/css-position.json CHANGED
@@ -181,12 +181,5 @@
181
181
  }
182
182
  },
183
183
  "descriptors": {},
184
- "valuespaces": {
185
- "<length>": {
186
- "prose": "The inset is a fixed distance from the reference edge. Negative values are allowed."
187
- },
188
- "<percentage>": {
189
- "prose": "The inset is a percentage relative to the containing block’s size in the corresponding axis (e.g. width for left or right, height for top and bottom). For sticky positioned boxes, the inset is instead relative to the relevant scrollport’s size. Negative values are allowed."
190
- }
191
- }
184
+ "valuespaces": {}
192
185
  }
package/css-shapes-2.json CHANGED
@@ -37,49 +37,44 @@
37
37
  },
38
38
  "descriptors": {},
39
39
  "valuespaces": {
40
- "<shape()>": {
41
- "value": "shape( <'fill-rule'>? from <coordinate-pair>, <shape-command>#)"
42
- },
43
40
  "<shape-command>": {
41
+ "prose": "The sequence of <shape-command>s represent further path data commands. Each command’s starting point is the previous command’s ending point.",
44
42
  "value": "<move-command> | <line-command> | <hv-line-command> | <curve-command> | <smooth-command> | <arc-command> | close"
45
43
  },
46
44
  "<coordinate-pair>": {
47
- "value": "<length-percentage>{2}",
48
- "prose": "Defines a pair of coordinates, representing a rightward and downward offset, respectively, from a specified reference point. Percentages are resolved against the width or height, respectively, of the reference box."
45
+ "value": "<length-percentage>{2}"
49
46
  },
50
47
  "<by-to>": {
51
- "value": "by | to",
52
- "prose": "Every command can be specified in \"absolute\" or \"relative\" coordinates, determined by their <by-to> component. to indicates that any <coordinate-pair>s in the command are relative to the top-left corner of the reference box, while by indicates that the <coordinate-pair>s are relative to the command’s starting point."
48
+ "value": "by | to"
53
49
  },
54
50
  "<move-command>": {
55
- "value": "move <by-to> <coordinate-pair>",
56
- "prose": "Adds a moveto command to the list of path data commands, with an ending point specified by the <coordinate-pair>. This draws nothing, and merely \"moves the pen\" for the next command."
51
+ "value": "move <by-to> <coordinate-pair>"
57
52
  },
58
53
  "<line-command>": {
59
- "value": "line <by-to> <coordinate-pair>",
60
- "prose": "Adds a lineto command to the list of path data commands, with an ending point specified by the <coordinate-pair>. This draws a straight line from the command’s starting point to its ending point."
54
+ "value": "line <by-to> <coordinate-pair>"
61
55
  },
62
56
  "<hv-line-command>": {
63
- "value": "[hline | vline] <by-to> <length-percentage>",
64
- "prose": "Adds a horizontal (for hline) or vertical (for vline) lineto command to the list of path data commands. This is equivalent to a line command with the <length-percentage> given as the horizontal or vertical component, respectively, of the <coordinate-pair>, and the other component specified appropriately to make the line horizontal or vertical."
57
+ "value": "[hline | vline] <by-to> <length-percentage>"
65
58
  },
66
59
  "<curve-command>": {
67
- "value": "curve <by-to> <coordinate-pair> via <coordinate-pair>{1,2}",
68
- "prose": "Adds a Bézier curve command to the list of path data commands, ending at the point specified by the first <coordinate-pair>. The via component specifies control points for the curve: if a single <coordinate-pair> is provided, the command specifies a quadratic curve; if two <coordinate-pair>s are provided, it specifies a cubic curve."
60
+ "value": "curve <by-to> <coordinate-pair> via <coordinate-pair>{1,2}"
69
61
  },
70
62
  "<smooth-command>": {
71
- "value": "smooth <by-to> <coordinate-pair> [via <coordinate-pair>]?",
72
- "prose": "Adds a smooth Bézier curve command to the list of path data commands, ending at the point specified by the first <coordinate-pair>. The via component specifies control points for the curve: if it’s omitted, the command specifies a smooth quadratic curve; if it’s provided, if specifies a smooth cubic curve."
63
+ "value": "smooth <by-to> <coordinate-pair> [via <coordinate-pair>]?"
73
64
  },
74
65
  "<arc-command>": {
75
- "value": "arc <by-to> <coordinate-pair> of <length-percentage>{1,2} [ <arc-sweep> || <arc-size> || rotate <angle> ]?",
76
- "prose": "Add an elliptical arc command to the list of path data commands, ending at the point specified by the <coordinate-pair>. The of component specifies the size of the ellipse that the arc is taken from. The first <length-percentage> provides the horizontal radius of the ellipse and the second provides the vertical radius. Like for <coordinate-pair>s, <percentage> values are resolved against the width or height of the reference box, as appropriate. If only one <length-percentage> is provided, both radiuses use the provided value. In that case, <percentage> values are resolved against the direction-agnostic size of the reference box (similar to the circle() function). The ellipse described by the specified radiuses defaults to being axis-aligned, but can be rotated by specifying an <angle>. Similar to the rotate() transform function, positive angles specify a clockwise rotation, and negative angles specify a counterclockwise rotation. If omitted, this defaults to 0deg. The ending point, radiuses, and angle, taken together, usually define two possible ellipses that intersect the starting point and ending point, and each ellipse can be traced in either direction, for a total of four possible arcs. The <arc-sweep> and <arc-size> components specify which of these arcs is desired: <arc-sweep> can be cw or ccw, indicating that the arc that is traced around the ellipse clockwise or counter-clockwise from the center, respectively, must be chosen. If omitted, this defaults to ccw. Note: In the SVG arc command, cw corresponds to the value 1 for the sweep flag, and ccw to the value 0. <arc-size> can be large or small, indicating that the larger or smaller, respectively, of the two possible arcs must be chosen. If omitted, this defaults to small. Note: In the SVG arc command, large corresponds to the value 1 for the large flag, and small to the 0. Note: If the starting and ending points are on exactly opposite sides of the ellipse, both possible arcs are the same size, but also there is only one possible ellipse. In this case, the <arc-sweep> distinguishes which of the two possible arcs will be chosen, and <arc-size> has no effect. A depiction of the two possible ellipses, and four possible arcs, that can be chosen between."
66
+ "value": "arc <by-to> <coordinate-pair> of <length-percentage>{1,2} [ <arc-sweep> || <arc-size> || rotate <angle> ]"
77
67
  },
78
68
  "<arc-sweep>": {
69
+ "prose": "<arc-sweep> can be cw or ccw, indicating that the arc that is traced around the ellipse clockwise or counter-clockwise from the center, respectively, must be chosen. If omitted, this defaults to ccw.",
79
70
  "value": "cw | ccw"
80
71
  },
81
72
  "<arc-size>": {
73
+ "prose": "<arc-size> can be large or small, indicating that the larger or smaller, respectively, of the two possible arcs must be chosen. If omitted, this defaults to small.",
82
74
  "value": "large | small"
75
+ },
76
+ "<shape()>": {
77
+ "value": "shape( <'fill-rule'>? from <coordinate-pair>, <shape-command>#)"
83
78
  }
84
79
  }
85
80
  }
package/css-shapes.json CHANGED
@@ -52,11 +52,8 @@
52
52
  },
53
53
  "descriptors": {},
54
54
  "valuespaces": {
55
- "<basic-shape-rect>": {
56
- "value": "<inset()> | <rect()> | <xywh()>"
57
- },
58
- "<shape-box>": {
59
- "value": "<box> | margin-box"
55
+ "<basic-shape>": {
56
+ "prose": "The <basic-shape> type can be specified using basic shape functions. When using this syntax to define shapes, the reference box is defined by each property that uses <basic-shape> values. The coordinate system for the shape has its origin on the top-left corner of the reference box with the x-axis running to the right and the y-axis running downwards. All the lengths expressed in percentages are resolved from the used dimensions of the reference box."
60
57
  },
61
58
  "<inset()>": {
62
59
  "value": "inset( <length-percentage>{1,4} [ round <'border-radius'> ]? )"
@@ -80,8 +77,13 @@
80
77
  "value": "path( [<'fill-rule'>,]? <string> )"
81
78
  },
82
79
  "<shape-radius>": {
83
- "value": "<length-percentage> | closest-side | farthest-side",
84
- "prose": "Defines a radius for a circle or ellipse. If omitted it defaults to closest-side. closest-side uses the length from the center of the shape to the closest side of the reference box. For circles, this is the closest side in any dimension. For ellipses, this is the closest side in the radius dimension. farthest-side uses the length from the center of the shape to the farthest side of the reference box. For circles, this is the farthest side in any dimension. For ellipses, this is the farthest side in the radius dimension."
80
+ "value": "<length-percentage> | closest-side | farthest-side"
81
+ },
82
+ "<basic-shape-rect>": {
83
+ "value": "<inset()> | <rect()> | <xywh()>"
84
+ },
85
+ "<shape-box>": {
86
+ "value": "<box> | margin-box"
85
87
  }
86
88
  }
87
89
  }
@@ -21,9 +21,5 @@
21
21
  }
22
22
  },
23
23
  "descriptors": {},
24
- "valuespaces": {
25
- "<percentage>": {
26
- "prose": "When displaying on a small device, renderers must not do size adjustment but instead the computed value of font-size must be multiplied by this percentage. Negative values are invalid."
27
- }
28
- }
24
+ "valuespaces": {}
29
25
  }
package/css-sizing.json CHANGED
@@ -119,9 +119,5 @@
119
119
  }
120
120
  },
121
121
  "descriptors": {},
122
- "valuespaces": {
123
- "<fit-content()>": {
124
- "value": "fit-content(<length-percentage>)"
125
- }
126
- }
122
+ "valuespaces": {}
127
123
  }