@webref/css 5.4.4 → 6.0.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.
Files changed (107) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/CSS.json +416 -21
  3. package/README.md +4 -4
  4. package/SVG.json +42 -35
  5. package/compat.json +111 -75
  6. package/compositing.json +101 -12
  7. package/css-align.json +237 -29
  8. package/css-anchor.json +177 -19
  9. package/css-animations-2.json +37 -15
  10. package/css-animations.json +155 -31
  11. package/css-backgrounds-4.json +107 -32
  12. package/css-backgrounds.json +426 -59
  13. package/css-box.json +243 -20
  14. package/css-break.json +292 -11
  15. package/css-cascade-6.json +22 -13
  16. package/css-cascade.json +50 -15
  17. package/css-color-5.json +320 -35
  18. package/css-color-adjust.json +75 -8
  19. package/css-color.json +1100 -61
  20. package/css-conditional-4.json +11 -6
  21. package/css-conditional-5.json +38 -19
  22. package/css-conditional.json +28 -15
  23. package/css-contain-3.json +101 -26
  24. package/css-contain.json +71 -6
  25. package/css-content.json +263 -30
  26. package/css-counter-styles.json +455 -18
  27. package/css-display.json +250 -19
  28. package/css-easing.json +137 -25
  29. package/css-env.json +61 -6
  30. package/css-exclusions.json +65 -6
  31. package/css-extensions.json +20 -12
  32. package/css-flexbox.json +132 -11
  33. package/css-fonts-5.json +255 -13
  34. package/css-fonts.json +886 -74
  35. package/css-gcpm-4.json +30 -5
  36. package/css-gcpm.json +76 -15
  37. package/css-grid-3.json +10 -9
  38. package/css-grid.json +442 -42
  39. package/css-highlight-api.json +13 -5
  40. package/css-images-4.json +192 -67
  41. package/css-images.json +152 -33
  42. package/css-inline.json +525 -16
  43. package/css-layout-api.json +20 -0
  44. package/css-line-grid.json +80 -7
  45. package/css-lists.json +140 -19
  46. package/css-logical.json +125 -50
  47. package/css-masking.json +330 -47
  48. package/css-multicol-2.json +32 -5
  49. package/css-multicol.json +84 -13
  50. package/css-namespaces.json +15 -10
  51. package/css-nav.json +62 -7
  52. package/css-nesting.json +15 -0
  53. package/css-overflow-4.json +83 -10
  54. package/css-overflow.json +239 -18
  55. package/css-overscroll.json +110 -9
  56. package/css-page-floats.json +188 -16
  57. package/css-page.json +262 -67
  58. package/css-paint-api.json +8 -5
  59. package/css-position.json +269 -16
  60. package/css-properties-values-api.json +9 -7
  61. package/css-pseudo.json +67 -0
  62. package/css-regions.json +8 -7
  63. package/css-rhythm.json +69 -10
  64. package/css-round-display.json +47 -10
  65. package/css-ruby.json +136 -8
  66. package/css-scoping.json +27 -0
  67. package/css-scroll-anchoring.json +20 -5
  68. package/css-scroll-snap-2.json +272 -10
  69. package/css-scroll-snap.json +218 -29
  70. package/css-scrollbars.json +41 -6
  71. package/css-shadow-parts.json +8 -5
  72. package/css-shapes-2.json +190 -43
  73. package/css-shapes.json +130 -36
  74. package/css-size-adjust.json +26 -5
  75. package/css-sizing-4.json +404 -23
  76. package/css-sizing.json +231 -12
  77. package/css-speech.json +619 -35
  78. package/css-syntax.json +193 -92
  79. package/css-tables.json +10 -9
  80. package/css-text-4.json +800 -40
  81. package/css-text-decor-4.json +394 -23
  82. package/css-text-decor.json +159 -14
  83. package/css-text.json +371 -20
  84. package/css-transforms-2.json +177 -40
  85. package/css-transforms.json +137 -45
  86. package/css-transitions.json +33 -14
  87. package/css-ui.json +436 -42
  88. package/css-values-5.json +99 -14
  89. package/css-values.json +653 -146
  90. package/css-variables.json +12 -7
  91. package/css-view-transitions.json +45 -7
  92. package/css-will-change.json +36 -7
  93. package/css-writing-modes.json +141 -10
  94. package/fill-stroke.json +290 -35
  95. package/filter-effects-2.json +6 -5
  96. package/filter-effects.json +109 -45
  97. package/fullscreen.json +15 -0
  98. package/mathml-core.json +10 -9
  99. package/mediaqueries-5.json +505 -52
  100. package/mediaqueries.json +307 -40
  101. package/motion.json +99 -16
  102. package/package.json +1 -1
  103. package/scroll-animations.json +225 -24
  104. package/selectors.json +368 -30
  105. package/svg-strokes.json +8 -7
  106. package/upgrade-insecure-requests.json +26 -0
  107. package/html.json +0 -19
package/css-ui.json CHANGED
@@ -3,8 +3,8 @@
3
3
  "title": "CSS Basic User Interface Module Level 4",
4
4
  "url": "https://drafts.csswg.org/css-ui-4/"
5
5
  },
6
- "properties": {
7
- "outline": {
6
+ "properties": [
7
+ {
8
8
  "name": "outline",
9
9
  "value": "[ <'outline-color'> || <'outline-style'> || <'outline-width'> ]",
10
10
  "initial": "see individual properties",
@@ -18,7 +18,7 @@
18
18
  "outline"
19
19
  ]
20
20
  },
21
- "outline-width": {
21
+ {
22
22
  "name": "outline-width",
23
23
  "value": "<line-width>",
24
24
  "initial": "medium",
@@ -33,7 +33,7 @@
33
33
  "outlineWidth"
34
34
  ]
35
35
  },
36
- "outline-style": {
36
+ {
37
37
  "name": "outline-style",
38
38
  "value": "auto | <outline-line-style>",
39
39
  "initial": "none",
@@ -48,22 +48,30 @@
48
48
  "outlineStyle"
49
49
  ]
50
50
  },
51
- "outline-color": {
51
+ {
52
52
  "name": "outline-color",
53
- "value": "[ <color> | <1d-image> ] | invert",
53
+ "value": "[ <color> | <image-1D> ] | invert",
54
54
  "initial": "invert",
55
55
  "appliesTo": "all elements",
56
56
  "inherited": "no",
57
57
  "percentages": "N/A",
58
- "computedValue": "The computed value for invert is invert. For <color> values, see CSS Color 4 § 14 Resolving <color> Values in [CSS-COLOR-4]. For <1d-image> values, see CSS Images 4 § 4 1D Image Values: the stripes() notation in [CSS-IMAGES-4].",
58
+ "computedValue": "The computed value for invert is invert. For <color> values, see CSS Color 4 § 14 Resolving <color> Values in [CSS-COLOR-4]. For <image-1D> values, see CSS Images 4 § 4 1D Image Values: the <image-1D> type and stripes() notation in [CSS-IMAGES-4].",
59
59
  "canonicalOrder": "per grammar",
60
60
  "animationType": "by computed value",
61
+ "values": [
62
+ {
63
+ "name": "invert",
64
+ "prose": "The outline-color property accepts all values of <border-color>, as well as the keyword invert. invert is expected to perform a color inversion on the pixels on the screen. This is a common trick to ensure the focus border is visible, regardless of color background.",
65
+ "type": "value",
66
+ "value": "invert"
67
+ }
68
+ ],
61
69
  "styleDeclaration": [
62
70
  "outline-color",
63
71
  "outlineColor"
64
72
  ]
65
73
  },
66
- "outline-offset": {
74
+ {
67
75
  "name": "outline-offset",
68
76
  "value": "<length>",
69
77
  "initial": "0",
@@ -78,7 +86,7 @@
78
86
  "outlineOffset"
79
87
  ]
80
88
  },
81
- "resize": {
89
+ {
82
90
  "name": "resize",
83
91
  "value": "none | both | horizontal | vertical | block | inline",
84
92
  "initial": "none",
@@ -92,7 +100,7 @@
92
100
  "resize"
93
101
  ]
94
102
  },
95
- "cursor": {
103
+ {
96
104
  "name": "cursor",
97
105
  "value": "[ [ <url> | <url-set> ] [<x> <y>]? ]#? [ auto | default | none | context-menu | help | pointer | progress | wait | cell | crosshair | text | vertical-text | alias | copy | move | no-drop | not-allowed | grab | grabbing | e-resize | n-resize | ne-resize | nw-resize | s-resize | se-resize | sw-resize | w-resize | ew-resize | ns-resize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out ]",
98
106
  "initial": "auto",
@@ -102,11 +110,220 @@
102
110
  "computedValue": "as specified, except with any relative URLs converted to absolute",
103
111
  "canonicalOrder": "per grammar",
104
112
  "animationType": "discrete",
113
+ "values": [
114
+ {
115
+ "name": "<url-set>",
116
+ "prose": "<url-set> is a limited version of image-set(), where only <url> and <url-set> can be used in the part of the <image-set-option> sub-production which would normally allow <image>.",
117
+ "type": "type"
118
+ },
119
+ {
120
+ "name": "auto",
121
+ "prose": "The UA determines the cursor to display based on the current context. Specifically, auto behaves as text over selectable text or editable elements, and default otherwise.",
122
+ "type": "value",
123
+ "value": "auto"
124
+ },
125
+ {
126
+ "name": "default",
127
+ "prose": "The platform-dependent default cursor. Often rendered as an arrow.",
128
+ "type": "value",
129
+ "value": "default"
130
+ },
131
+ {
132
+ "name": "none",
133
+ "prose": "No cursor is rendered for the element.",
134
+ "type": "value",
135
+ "value": "none"
136
+ },
137
+ {
138
+ "name": "context-menu",
139
+ "prose": "A context menu is available for the object under the cursor. Often rendered as an arrow with a small menu-like graphic next to it.",
140
+ "type": "value",
141
+ "value": "context-menu"
142
+ },
143
+ {
144
+ "name": "help",
145
+ "prose": "Help is available for the object under the cursor. Often rendered as a question mark or a balloon.",
146
+ "type": "value",
147
+ "value": "help"
148
+ },
149
+ {
150
+ "name": "pointer",
151
+ "prose": "The cursor is a pointer that indicates a link. Often rendered as the backside of a hand with the index finger extended. Unless otherwise specified, UAs must apply cursor: pointer to hyperlinks for all supported document formats via the UA stylesheet, using a normal (i.e. not !important) declaration. Authors should use pointer on links and may use on other interactive elements.",
152
+ "type": "value",
153
+ "value": "pointer"
154
+ },
155
+ {
156
+ "name": "progress",
157
+ "prose": "A progress indicator. The program is performing some processing, but is different from wait in that the user may still interact with the program. Often rendered as a spinning beach ball, or an arrow with a watch or hourglass.",
158
+ "type": "value",
159
+ "value": "progress"
160
+ },
161
+ {
162
+ "name": "wait",
163
+ "prose": "Indicates that the program is busy and the user should wait. Often rendered as a watch or hourglass.",
164
+ "type": "value",
165
+ "value": "wait"
166
+ },
167
+ {
168
+ "name": "cell",
169
+ "prose": "Indicates that a cell or set of cells may be selected. Often rendered as a thick plus-sign with a dot in the middle.",
170
+ "type": "value",
171
+ "value": "cell"
172
+ },
173
+ {
174
+ "name": "crosshair",
175
+ "prose": "A simple crosshair (e.g., short line segments resembling a \"+\" sign). Often used to indicate a two dimensional bitmap selection mode.",
176
+ "type": "value",
177
+ "value": "crosshair"
178
+ },
179
+ {
180
+ "name": "text",
181
+ "prose": "Indicates text that may be selected. Often rendered as an I-beam. User agents must automatically display a vertical I-beam/cursor over elements with a horizontal writing mode, and a horizontal I-beam/cursor (e.g. same as the vertical-text keyword) over elements in a vertical writing mode. Additionally, user agents may take transforms (see [CSS-TRANSFORMS-1]) or other visual effects such as text on a path (See SVG 2 § 11.8 Text on a path), when choosing between the horizontal or vertical text cursor, and may display any angle of I-beam/cursor for text that is rendered at any particular angle.",
182
+ "type": "value",
183
+ "value": "text"
184
+ },
185
+ {
186
+ "name": "vertical-text",
187
+ "prose": "Indicates vertical-text that may be selected. Often rendered as a horizontal I-beam.",
188
+ "type": "value",
189
+ "value": "vertical-text"
190
+ },
191
+ {
192
+ "name": "alias",
193
+ "prose": "Indicates an alias of/shortcut to something is to be created. Often rendered as an arrow with a small curved arrow next to it.",
194
+ "type": "value",
195
+ "value": "alias"
196
+ },
197
+ {
198
+ "name": "copy",
199
+ "prose": "Indicates something is to be copied. Often rendered as an arrow with a small plus sign next to it.",
200
+ "type": "value",
201
+ "value": "copy"
202
+ },
203
+ {
204
+ "name": "move",
205
+ "prose": "Indicates something is to be moved.",
206
+ "type": "value",
207
+ "value": "move"
208
+ },
209
+ {
210
+ "name": "no-drop",
211
+ "prose": "Indicates that the dragged item cannot be dropped at the current cursor location. Often rendered as a hand or pointer with a small circle with a line through it.",
212
+ "type": "value",
213
+ "value": "no-drop"
214
+ },
215
+ {
216
+ "name": "not-allowed",
217
+ "prose": "Indicates that the requested action will not be carried out. Often rendered as a circle with a line through it.",
218
+ "type": "value",
219
+ "value": "not-allowed"
220
+ },
221
+ {
222
+ "name": "grab",
223
+ "prose": "Indicates that something can be grabbed (dragged to be moved). Often rendered as the backside of an open hand.",
224
+ "type": "value",
225
+ "value": "grab"
226
+ },
227
+ {
228
+ "name": "grabbing",
229
+ "prose": "Indicates that something is being grabbed (dragged to be moved). Often rendered as the backside of a hand with fingers closed mostly out of view.",
230
+ "type": "value",
231
+ "value": "grabbing"
232
+ },
233
+ {
234
+ "name": "e-resize",
235
+ "type": "value",
236
+ "value": "e-resize"
237
+ },
238
+ {
239
+ "name": "n-resize",
240
+ "type": "value",
241
+ "value": "n-resize"
242
+ },
243
+ {
244
+ "name": "ne-resize",
245
+ "type": "value",
246
+ "value": "ne-resize"
247
+ },
248
+ {
249
+ "name": "nw-resize",
250
+ "type": "value",
251
+ "value": "nw-resize"
252
+ },
253
+ {
254
+ "name": "s-resize",
255
+ "type": "value",
256
+ "value": "s-resize"
257
+ },
258
+ {
259
+ "name": "se-resize",
260
+ "type": "value",
261
+ "value": "se-resize"
262
+ },
263
+ {
264
+ "name": "sw-resize",
265
+ "type": "value",
266
+ "value": "sw-resize"
267
+ },
268
+ {
269
+ "name": "w-resize",
270
+ "type": "value",
271
+ "value": "w-resize"
272
+ },
273
+ {
274
+ "name": "ew-resize",
275
+ "type": "value",
276
+ "value": "ew-resize"
277
+ },
278
+ {
279
+ "name": "ns-resize",
280
+ "type": "value",
281
+ "value": "ns-resize"
282
+ },
283
+ {
284
+ "name": "nesw-resize",
285
+ "type": "value",
286
+ "value": "nesw-resize"
287
+ },
288
+ {
289
+ "name": "nwse-resize",
290
+ "type": "value",
291
+ "value": "nwse-resize"
292
+ },
293
+ {
294
+ "name": "col-resize",
295
+ "prose": "Indicates that the item/column can be resized horizontally. Often rendered as arrows pointing left and right with a vertical bar separating them.",
296
+ "type": "value",
297
+ "value": "col-resize"
298
+ },
299
+ {
300
+ "name": "row-resize",
301
+ "prose": "Indicates that the item/row can be resized vertically. Often rendered as arrows pointing up and down with a horizontal bar separating them.",
302
+ "type": "value",
303
+ "value": "row-resize"
304
+ },
305
+ {
306
+ "name": "all-scroll",
307
+ "prose": "Indicates that the something can be scrolled in any direction. Often rendered as arrows pointing up, down, left, and right with a dot in the middle.",
308
+ "type": "value",
309
+ "value": "all-scroll"
310
+ },
311
+ {
312
+ "name": "zoom-in",
313
+ "type": "value",
314
+ "value": "zoom-in"
315
+ },
316
+ {
317
+ "name": "zoom-out",
318
+ "type": "value",
319
+ "value": "zoom-out"
320
+ }
321
+ ],
105
322
  "styleDeclaration": [
106
323
  "cursor"
107
324
  ]
108
325
  },
109
- "caret-color": {
326
+ {
110
327
  "name": "caret-color",
111
328
  "value": "auto | <color>",
112
329
  "initial": "auto",
@@ -121,7 +338,7 @@
121
338
  "caretColor"
122
339
  ]
123
340
  },
124
- "caret-shape": {
341
+ {
125
342
  "name": "caret-shape",
126
343
  "value": "auto | bar | block | underscore",
127
344
  "initial": "auto",
@@ -131,12 +348,38 @@
131
348
  "computedValue": "specified keyword",
132
349
  "canonicalOrder": "per grammar",
133
350
  "animationType": "by computed value",
351
+ "values": [
352
+ {
353
+ "name": "auto",
354
+ "prose": "The UA determines the shape of the caret. It should match platform conventions, and may be adjusted based on context. For example, if a UA switches between insert mode and overtype mode when the user presses the insert key on their keyboard, it may show a bar caret in insert mode, and a block caret in overtype mode.",
355
+ "type": "value",
356
+ "value": "auto"
357
+ },
358
+ {
359
+ "name": "bar",
360
+ "prose": "The UA must render the text insertion caret as a thin bar placed at the insertion point. This means it is between, before, or after characters, not over them. It should be perpendicular to the inline progression direction, although UAs may render it slanted when inserting italic or oblique text.",
361
+ "type": "value",
362
+ "value": "bar"
363
+ },
364
+ {
365
+ "name": "block",
366
+ "prose": "The UA must render the text insertion caret as a rectangle overlapping the next visible character following the insertion point. If there is no visible character after the insertion point, the UA must render the caret after the last visible character. UAs may render it as a slanted rectangle when inserting italic or oblique text.",
367
+ "type": "value",
368
+ "value": "block"
369
+ },
370
+ {
371
+ "name": "underscore",
372
+ "prose": "The UA must render the text insertion caret as a thin line under (as defined in [CSS-WRITING-MODES-3] the next visible character following the insertion point. If there is no visible character after the insertion point, the UA must render the caret after the last visible character.",
373
+ "type": "value",
374
+ "value": "underscore"
375
+ }
376
+ ],
134
377
  "styleDeclaration": [
135
378
  "caret-shape",
136
379
  "caretShape"
137
380
  ]
138
381
  },
139
- "caret": {
382
+ {
140
383
  "name": "caret",
141
384
  "value": "<'caret-color'> || <'caret-shape'>",
142
385
  "initial": "auto",
@@ -150,7 +393,7 @@
150
393
  "caret"
151
394
  ]
152
395
  },
153
- "nav-up": {
396
+ {
154
397
  "name": "nav-up",
155
398
  "value": "auto | <id> [ current | root | <target-name> ]?",
156
399
  "initial": "auto",
@@ -165,7 +408,7 @@
165
408
  "navUp"
166
409
  ]
167
410
  },
168
- "nav-right": {
411
+ {
169
412
  "name": "nav-right",
170
413
  "value": "auto | <id> [ current | root | <target-name> ]?",
171
414
  "initial": "auto",
@@ -180,7 +423,7 @@
180
423
  "navRight"
181
424
  ]
182
425
  },
183
- "nav-down": {
426
+ {
184
427
  "name": "nav-down",
185
428
  "value": "auto | <id> [ current | root | <target-name> ]?",
186
429
  "initial": "auto",
@@ -195,7 +438,7 @@
195
438
  "navDown"
196
439
  ]
197
440
  },
198
- "nav-left": {
441
+ {
199
442
  "name": "nav-left",
200
443
  "value": "auto | <id> [ current | root | <target-name> ]?",
201
444
  "initial": "auto",
@@ -210,7 +453,7 @@
210
453
  "navLeft"
211
454
  ]
212
455
  },
213
- "user-select": {
456
+ {
214
457
  "name": "user-select",
215
458
  "value": "auto | text | none | contain | all",
216
459
  "initial": "auto",
@@ -220,12 +463,43 @@
220
463
  "computedValue": "specified keyword",
221
464
  "canonicalOrder": "per grammar",
222
465
  "animationType": "discrete",
466
+ "values": [
467
+ {
468
+ "name": "auto",
469
+ "prose": "The used value of auto is determined as follows: On the ::before and ::after pseudo-elements, the used value is none If the element is an editable element, the used value is contain Otherwise, if the used value of user-select on the parent of this element is all, the used value is all Otherwise, if the used value of user-select on the parent of this element is none, the used value is none Otherwise, the used value is text",
470
+ "type": "value",
471
+ "value": "auto"
472
+ },
473
+ {
474
+ "name": "text",
475
+ "prose": "The element imposes no constraint on the selection.",
476
+ "type": "value",
477
+ "value": "text"
478
+ },
479
+ {
480
+ "name": "none",
481
+ "prose": "The UA must not allow selections to be started in this element. A selection started outside of this element must not end in this element. If the user attempts to create such a selection, the UA must instead end the selection range at the element boundary. However, if this element has descendants on which the used value of user-select is not none, selections that start and end within these descendants are allowed. The UA must allow selections to extend across this element, and must exclude this element from such a selection. An exception is made for UAs which do not support multiple ranges per selection, and they may include this element. If the element has descendants on which the used value of user-select is not none, these descendants must be included in a selection extending across the element. This specification makes no normative requirement about the behavior of the clipboard. however, UAs are encouraged to keep the visual selection consistent with what would get copied to the clipboard when copying. Copying text that does not appear to be selected, or vice versa, is highly confusing to users. Attempting to start a selection in an element where user-select is none, such as by clicking in it or starting a drag in it, must not cause a pre-existing selection to become unselected or to be affected in any way. As user-select is a UI convenience mechanism, not a copy protection mechanism, the UA may provide an alternative way for the user to explicitly select the text even when user-select is none.",
482
+ "type": "value",
483
+ "value": "none"
484
+ },
485
+ {
486
+ "name": "contain",
487
+ "value": "contain",
488
+ "type": "value"
489
+ },
490
+ {
491
+ "name": "all",
492
+ "prose": "The content of the element must be selected atomically: If a selection would contain part of the element, then the selection must contain the entire element including all its descendants. If the element is selected and the used value of user-select on its parent is all, then the parent must be included in the selection, recursively. If this element has descendants on which the used value of user-select is not all and if a selection is entirely contained in these descendants, then the selection is not extended to include this whole element.",
493
+ "type": "value",
494
+ "value": "all"
495
+ }
496
+ ],
223
497
  "styleDeclaration": [
224
498
  "user-select",
225
499
  "userSelect"
226
500
  ]
227
501
  },
228
- "accent-color": {
502
+ {
229
503
  "name": "accent-color",
230
504
  "value": "auto | <color>",
231
505
  "initial": "auto",
@@ -235,12 +509,26 @@
235
509
  "computedValue": "the keyword auto or a computed color",
236
510
  "canonicalOrder": "per grammar",
237
511
  "animationType": "by computed value type",
512
+ "values": [
513
+ {
514
+ "name": "auto",
515
+ "prose": "Represents a UA-chosen color, which should match the accent color of the platform, if any.",
516
+ "type": "value",
517
+ "value": "auto"
518
+ },
519
+ {
520
+ "name": "<color>",
521
+ "prose": "Specifies the color to be used as the accent color.",
522
+ "type": "value",
523
+ "value": "<color>"
524
+ }
525
+ ],
238
526
  "styleDeclaration": [
239
527
  "accent-color",
240
528
  "accentColor"
241
529
  ]
242
530
  },
243
- "appearance": {
531
+ {
244
532
  "name": "appearance",
245
533
  "value": "none | auto | <compat-auto> | <compat-special>",
246
534
  "initial": "none",
@@ -250,11 +538,105 @@
250
538
  "computedValue": "specified keyword",
251
539
  "canonicalOrder": "per grammar",
252
540
  "animationType": "discrete",
541
+ "values": [
542
+ {
543
+ "name": "none",
544
+ "prose": "The element is rendered following the usual rules of CSS. Replaced elements other than widgets are not affected by this and remain replaced elements. Widgets must not have their native appearance, and instead must have their primitive appearance. See § 7.2.2 Effects of appearance on Decorative Aspects of Elements and § 7.2.3 Effects of appearance on Semantic Aspects of Elements for details.",
545
+ "type": "value",
546
+ "value": "none"
547
+ },
548
+ {
549
+ "name": "auto",
550
+ "prose": "Elements representing widgets should have the native appearance of that widget, if the properties that disable native appearance for widgets are not in effect. See § 7.2.1 Properties Disabling Native Appearance. The host language is responsible for defining which elements represent which widgets. Elements other than widgets must be rendered as for none.",
551
+ "type": "value",
552
+ "value": "auto"
553
+ },
554
+ {
555
+ "name": "<compat-auto>",
556
+ "value": "searchfield | textarea | push-button | slider-horizontal | checkbox | radio | square-button | menulist | listbox | meter | progress-bar | button",
557
+ "type": "type"
558
+ },
559
+ {
560
+ "name": "searchfield",
561
+ "type": "value",
562
+ "value": "searchfield"
563
+ },
564
+ {
565
+ "name": "textarea",
566
+ "type": "value",
567
+ "value": "textarea"
568
+ },
569
+ {
570
+ "name": "push-button",
571
+ "type": "value",
572
+ "value": "push-button"
573
+ },
574
+ {
575
+ "name": "slider-horizontal",
576
+ "type": "value",
577
+ "value": "slider-horizontal"
578
+ },
579
+ {
580
+ "name": "checkbox",
581
+ "type": "value",
582
+ "value": "checkbox"
583
+ },
584
+ {
585
+ "name": "radio",
586
+ "type": "value",
587
+ "value": "radio"
588
+ },
589
+ {
590
+ "name": "square-button",
591
+ "type": "value",
592
+ "value": "square-button"
593
+ },
594
+ {
595
+ "name": "menulist",
596
+ "type": "value",
597
+ "value": "menulist"
598
+ },
599
+ {
600
+ "name": "listbox",
601
+ "type": "value",
602
+ "value": "listbox"
603
+ },
604
+ {
605
+ "name": "meter",
606
+ "type": "value",
607
+ "value": "meter"
608
+ },
609
+ {
610
+ "name": "progress-bar",
611
+ "type": "value",
612
+ "value": "progress-bar"
613
+ },
614
+ {
615
+ "name": "button",
616
+ "type": "value",
617
+ "value": "button"
618
+ },
619
+ {
620
+ "name": "<compat-special>",
621
+ "value": "textfield | menulist-button",
622
+ "type": "type"
623
+ },
624
+ {
625
+ "name": "textfield",
626
+ "type": "value",
627
+ "value": "textfield"
628
+ },
629
+ {
630
+ "name": "menulist-button",
631
+ "type": "value",
632
+ "value": "menulist-button"
633
+ }
634
+ ],
253
635
  "styleDeclaration": [
254
636
  "appearance"
255
637
  ]
256
638
  },
257
- "input-security": {
639
+ {
258
640
  "name": "input-security",
259
641
  "value": "auto | none",
260
642
  "initial": "auto",
@@ -264,12 +646,26 @@
264
646
  "computedValue": "as specified",
265
647
  "canonicalOrder": "per grammar",
266
648
  "animationType": "by computed value type",
649
+ "values": [
650
+ {
651
+ "name": "none",
652
+ "prose": "The UA must not obscure the text in the control, so that it can be read by the user.",
653
+ "type": "value",
654
+ "value": "none"
655
+ },
656
+ {
657
+ "name": "auto",
658
+ "prose": "The UA should obscure the text in the control, so that it cannot be read by the user.",
659
+ "type": "value",
660
+ "value": "auto"
661
+ }
662
+ ],
267
663
  "styleDeclaration": [
268
664
  "input-security",
269
665
  "inputSecurity"
270
666
  ]
271
667
  },
272
- "-webkit-user-select": {
668
+ {
273
669
  "name": "-webkit-user-select",
274
670
  "styleDeclaration": [
275
671
  "-webkit-user-select",
@@ -277,7 +673,7 @@
277
673
  "webkitUserSelect"
278
674
  ]
279
675
  },
280
- "-webkit-appearance": {
676
+ {
281
677
  "name": "-webkit-appearance",
282
678
  "styleDeclaration": [
283
679
  "-webkit-appearance",
@@ -285,26 +681,24 @@
285
681
  "webkitAppearance"
286
682
  ]
287
683
  }
288
- },
289
- "atrules": {},
290
- "valuespaces": {
291
- "<outline-line-style>": {
292
- "prose": "<outline-line-style> accepts the same values as <line-style> (CSS Backgrounds 3 § 3.2 Line Patterns: the border-style properties) with the same meaning, except that hidden is not a legal outline style. In addition, the outline-style property accepts the value auto. The auto value permits the user agent to render a custom outline style, typically a style which is either a user interface default for the platform, or perhaps a style that is richer than can be described in detail in CSS, e.g. a rounded edge outline with semi-translucent outer pixels that appears to glow. As such, this specification does not define how the outline-color and outline-width are incorporated or used (if at all) when rendering auto style outlines. User agents may treat auto as solid."
293
- },
294
- "<url-set>": {
295
- "prose": "<url-set> is a limited version of image-set(), where only <url> and <url-set> can be used in the part of the <image-set-option> sub-production which would normally allow <image>."
296
- },
297
- "<id>": {
298
- "prose": "The <id> value is an ID selector [SELECT]. In response to directional navigation input corresponding to the property, the focus is navigated to the first element in tree order matching the selector. If this refers to the currently focused element, the directional navigation input respective to the nav- property is ignored — there is no need to refocus the same element. If no element matches the selector, the user agent automatically determines which element to navigate the focus to. If the focus is navigated to an element that was not otherwise focusable, it becomes focusable only as the result of this directional navigation, and the :focus pseudo-class matches the element while it is focused as such."
299
- },
300
- "<target-name>": {
301
- "prose": "The <target-name> parameter indicates the target frame for the focus navigation. It is a <string> and it MUST NOT start with the underscore \"_\" character. Error handling: if it does start with an underscore, \"_parent\" navigates to the parent frame, \"_root\" is treated as root, and other values navigate to a frame by that name if it exists. If the specified target frame does not exist, the parameter will be treated as the keyword current, which means to simply use the frame that the element is in. The keyword root indicates that the user agent should target the full window."
684
+ ],
685
+ "atrules": [],
686
+ "selectors": [],
687
+ "values": [
688
+ {
689
+ "name": "<outline-line-style>",
690
+ "prose": "<outline-line-style> accepts the same values as <line-style> (CSS Backgrounds 3 § 3.2 Line Patterns: the border-style properties) with the same meaning, except that hidden is not a legal outline style. In addition, the outline-style property accepts the value auto. The auto value permits the user agent to render a custom outline style, typically a style which is either a user interface default for the platform, or perhaps a style that is richer than can be described in detail in CSS, e.g. a rounded edge outline with semi-translucent outer pixels that appears to glow. As such, this specification does not define how the outline-color and outline-width are incorporated or used (if at all) when rendering auto style outlines. User agents may treat auto as solid.",
691
+ "type": "type"
302
692
  },
303
- "<compat-auto>": {
304
- "value": "searchfield | textarea | push-button | slider-horizontal | checkbox | radio | square-button | menulist | listbox | meter | progress-bar | button"
693
+ {
694
+ "name": "<id>",
695
+ "prose": "The <id> value is an ID selector [SELECT]. In response to directional navigation input corresponding to the property, the focus is navigated to the first element in tree order matching the selector. If this refers to the currently focused element, the directional navigation input respective to the nav- property is ignored — there is no need to refocus the same element. If no element matches the selector, the user agent automatically determines which element to navigate the focus to. If the focus is navigated to an element that was not otherwise focusable, it becomes focusable only as the result of this directional navigation, and the :focus pseudo-class matches the element while it is focused as such.",
696
+ "type": "type"
305
697
  },
306
- "<compat-special>": {
307
- "value": "textfield | menulist-button"
698
+ {
699
+ "name": "<target-name>",
700
+ "prose": "The <target-name> parameter indicates the target frame for the focus navigation. It is a <string> and it MUST NOT start with the underscore \"_\" character. Error handling: if it does start with an underscore, \"_parent\" navigates to the parent frame, \"_root\" is treated as root, and other values navigate to a frame by that name if it exists. If the specified target frame does not exist, the parameter will be treated as the keyword current, which means to simply use the frame that the element is in. The keyword root indicates that the user agent should target the full window.",
701
+ "type": "type"
308
702
  }
309
- }
703
+ ]
310
704
  }