syntaxes.json 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755
  1. {
  2. "absolute-size": {
  3. "syntax": "xx-small | x-small | small | medium | large | x-large | xx-large"
  4. },
  5. "alpha-value": {
  6. "syntax": "<number> | <percentage>"
  7. },
  8. "angle-percentage": {
  9. "syntax": "<angle> | <percentage>"
  10. },
  11. "angular-color-hint": {
  12. "syntax": "<angle-percentage>"
  13. },
  14. "angular-color-stop": {
  15. "syntax": "<color> && <color-stop-angle>?"
  16. },
  17. "angular-color-stop-list": {
  18. "syntax": "[ <angular-color-stop> [, <angular-color-hint>]? ]# , <angular-color-stop>"
  19. },
  20. "animateable-feature": {
  21. "syntax": "scroll-position | contents | <custom-ident>"
  22. },
  23. "attachment": {
  24. "syntax": "scroll | fixed | local"
  25. },
  26. "attr()": {
  27. "syntax": "attr( <attr-name> <type-or-unit>? [, <attr-fallback> ]? )"
  28. },
  29. "attr-matcher": {
  30. "syntax": "[ '~' | '|' | '^' | '$' | '*' ]? '='"
  31. },
  32. "attr-modifier": {
  33. "syntax": "i | s"
  34. },
  35. "attribute-selector": {
  36. "syntax": "'[' <wq-name> ']' | '[' <wq-name> <attr-matcher> [ <string-token> | <ident-token> ] <attr-modifier>? ']'"
  37. },
  38. "auto-repeat": {
  39. "syntax": "repeat( [ auto-fill | auto-fit ] , [ <line-names>? <fixed-size> ]+ <line-names>? )"
  40. },
  41. "auto-track-list": {
  42. "syntax": "[ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>? <auto-repeat>\n[ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>?"
  43. },
  44. "baseline-position": {
  45. "syntax": "[ first | last ]? baseline"
  46. },
  47. "basic-shape": {
  48. "syntax": "<inset()> | <circle()> | <ellipse()> | <polygon()>"
  49. },
  50. "bg-image": {
  51. "syntax": "none | <image>"
  52. },
  53. "bg-layer": {
  54. "syntax": "<bg-image> || <bg-position> [ / <bg-size> ]? || <repeat-style> || <attachment> || <box> || <box>"
  55. },
  56. "bg-position": {
  57. "syntax": "[ [ left | center | right | top | bottom | <length-percentage> ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ] | [ center | [ left | right ] <length-percentage>? ] && [ center | [ top | bottom ] <length-percentage>? ] ]"
  58. },
  59. "bg-size": {
  60. "syntax": "[ <length-percentage> | auto ]{1,2} | cover | contain"
  61. },
  62. "blur()": {
  63. "syntax": "blur( <length> )"
  64. },
  65. "blend-mode": {
  66. "syntax": "normal | multiply | screen | overlay | darken | lighten | color-dodge | color-burn | hard-light | soft-light | difference | exclusion | hue | saturation | color | luminosity"
  67. },
  68. "box": {
  69. "syntax": "border-box | padding-box | content-box"
  70. },
  71. "brightness()": {
  72. "syntax": "brightness( <number-percentage> )"
  73. },
  74. "calc()": {
  75. "syntax": "calc( <calc-sum> )"
  76. },
  77. "calc-sum": {
  78. "syntax": "<calc-product> [ [ '+' | '-' ] <calc-product> ]*"
  79. },
  80. "calc-product": {
  81. "syntax": "<calc-value> [ '*' <calc-value> | '/' <number> ]*"
  82. },
  83. "calc-value": {
  84. "syntax": "<number> | <dimension> | <percentage> | ( <calc-sum> )"
  85. },
  86. "cf-final-image": {
  87. "syntax": "<image> | <color>"
  88. },
  89. "cf-mixing-image": {
  90. "syntax": "<percentage>? && <image>"
  91. },
  92. "circle()": {
  93. "syntax": "circle( [ <shape-radius> ]? [ at <position> ]? )"
  94. },
  95. "clamp()": {
  96. "syntax": "clamp( <calc-sum>#{3} )"
  97. },
  98. "class-selector": {
  99. "syntax": "'.' <ident-token>"
  100. },
  101. "clip-source": {
  102. "syntax": "<url>"
  103. },
  104. "color": {
  105. "syntax": "<rgb()> | <rgba()> | <hsl()> | <hsla()> | <hex-color> | <named-color> | currentcolor | <deprecated-system-color>"
  106. },
  107. "color-stop": {
  108. "syntax": "<color-stop-length> | <color-stop-angle>"
  109. },
  110. "color-stop-angle": {
  111. "syntax": "<angle-percentage>{1,2}"
  112. },
  113. "color-stop-length": {
  114. "syntax": "<length-percentage>{1,2}"
  115. },
  116. "color-stop-list": {
  117. "syntax": "[ <linear-color-stop> [, <linear-color-hint>]? ]# , <linear-color-stop>"
  118. },
  119. "combinator": {
  120. "syntax": "'>' | '+' | '~' | [ '||' ]"
  121. },
  122. "common-lig-values": {
  123. "syntax": "[ common-ligatures | no-common-ligatures ]"
  124. },
  125. "compat": {
  126. "syntax": "searchfield | textarea | push-button | button-bevel | slider-horizontal | checkbox | radio | square-button | menulist | menulist-button | listbox | meter | progress-bar"
  127. },
  128. "composite-style": {
  129. "syntax": "clear | copy | source-over | source-in | source-out | source-atop | destination-over | destination-in | destination-out | destination-atop | xor"
  130. },
  131. "compositing-operator": {
  132. "syntax": "add | subtract | intersect | exclude"
  133. },
  134. "compound-selector": {
  135. "syntax": "[ <type-selector>? <subclass-selector>* [ <pseudo-element-selector> <pseudo-class-selector>* ]* ]!"
  136. },
  137. "compound-selector-list": {
  138. "syntax": "<compound-selector>#"
  139. },
  140. "complex-selector": {
  141. "syntax": "<compound-selector> [ <combinator>? <compound-selector> ]*"
  142. },
  143. "complex-selector-list": {
  144. "syntax": "<complex-selector>#"
  145. },
  146. "conic-gradient()": {
  147. "syntax": "conic-gradient( [ from <angle> ]? [ at <position> ]?, <angular-color-stop-list> )"
  148. },
  149. "contextual-alt-values": {
  150. "syntax": "[ contextual | no-contextual ]"
  151. },
  152. "content-distribution": {
  153. "syntax": "space-between | space-around | space-evenly | stretch"
  154. },
  155. "content-list": {
  156. "syntax": "[ <string> | contents | <image> | <quote> | <target> | <leader()> ]+"
  157. },
  158. "content-position": {
  159. "syntax": "center | start | end | flex-start | flex-end"
  160. },
  161. "content-replacement": {
  162. "syntax": "<image>"
  163. },
  164. "contrast()": {
  165. "syntax": "contrast( [ <number-percentage> ] )"
  166. },
  167. "counter()": {
  168. "syntax": "counter( <custom-ident>, [ <counter-style> | none ]? )"
  169. },
  170. "counter-style": {
  171. "syntax": "<counter-style-name> | symbols()"
  172. },
  173. "counter-style-name": {
  174. "syntax": "<custom-ident>"
  175. },
  176. "counters()": {
  177. "syntax": "counters( <custom-ident>, <string>, [ <counter-style> | none ]? )"
  178. },
  179. "cross-fade()": {
  180. "syntax": "cross-fade( <cf-mixing-image> , <cf-final-image>? )"
  181. },
  182. "cubic-bezier-timing-function": {
  183. "syntax": "ease | ease-in | ease-out | ease-in-out | cubic-bezier(<number>, <number>, <number>, <number>)"
  184. },
  185. "deprecated-system-color": {
  186. "syntax": "ActiveBorder | ActiveCaption | AppWorkspace | Background | ButtonFace | ButtonHighlight | ButtonShadow | ButtonText | CaptionText | GrayText | Highlight | HighlightText | InactiveBorder | InactiveCaption | InactiveCaptionText | InfoBackground | InfoText | Menu | MenuText | Scrollbar | ThreeDDarkShadow | ThreeDFace | ThreeDHighlight | ThreeDLightShadow | ThreeDShadow | Window | WindowFrame | WindowText"
  187. },
  188. "discretionary-lig-values": {
  189. "syntax": "[ discretionary-ligatures | no-discretionary-ligatures ]"
  190. },
  191. "display-box": {
  192. "syntax": "contents | none"
  193. },
  194. "display-inside": {
  195. "syntax": "flow | flow-root | table | flex | grid | ruby"
  196. },
  197. "display-internal": {
  198. "syntax": "table-row-group | table-header-group | table-footer-group | table-row | table-cell | table-column-group | table-column | table-caption | ruby-base | ruby-text | ruby-base-container | ruby-text-container"
  199. },
  200. "display-legacy": {
  201. "syntax": "inline-block | inline-list-item | inline-table | inline-flex | inline-grid"
  202. },
  203. "display-listitem": {
  204. "syntax": "<display-outside>? && [ flow | flow-root ]? && list-item"
  205. },
  206. "display-outside": {
  207. "syntax": "block | inline | run-in"
  208. },
  209. "drop-shadow()": {
  210. "syntax": "drop-shadow( <length>{2,3} <color>? )"
  211. },
  212. "east-asian-variant-values": {
  213. "syntax": "[ jis78 | jis83 | jis90 | jis04 | simplified | traditional ]"
  214. },
  215. "east-asian-width-values": {
  216. "syntax": "[ full-width | proportional-width ]"
  217. },
  218. "element()": {
  219. "syntax": "element( <id-selector> )"
  220. },
  221. "ellipse()": {
  222. "syntax": "ellipse( [ <shape-radius>{2} ]? [ at <position> ]? )"
  223. },
  224. "ending-shape": {
  225. "syntax": "circle | ellipse"
  226. },
  227. "env()": {
  228. "syntax": "env( <custom-ident> , <declaration-value>? )"
  229. },
  230. "explicit-track-list": {
  231. "syntax": "[ <line-names>? <track-size> ]+ <line-names>?"
  232. },
  233. "family-name": {
  234. "syntax": "<string> | <custom-ident>+"
  235. },
  236. "feature-tag-value": {
  237. "syntax": "<string> [ <integer> | on | off ]?"
  238. },
  239. "feature-type": {
  240. "syntax": "@stylistic | @historical-forms | @styleset | @character-variant | @swash | @ornaments | @annotation"
  241. },
  242. "feature-value-block": {
  243. "syntax": "<feature-type> '{' <feature-value-declaration-list> '}'"
  244. },
  245. "feature-value-block-list": {
  246. "syntax": "<feature-value-block>+"
  247. },
  248. "feature-value-declaration": {
  249. "syntax": "<custom-ident>: <integer>+;"
  250. },
  251. "feature-value-declaration-list": {
  252. "syntax": "<feature-value-declaration>"
  253. },
  254. "feature-value-name": {
  255. "syntax": "<custom-ident>"
  256. },
  257. "fill-rule": {
  258. "syntax": "nonzero | evenodd"
  259. },
  260. "filter-function": {
  261. "syntax": "<blur()> | <brightness()> | <contrast()> | <drop-shadow()> | <grayscale()> | <hue-rotate()> | <invert()> | <opacity()> | <saturate()> | <sepia()>"
  262. },
  263. "filter-function-list": {
  264. "syntax": "[ <filter-function> | <url> ]+"
  265. },
  266. "final-bg-layer": {
  267. "syntax": "<'background-color'> || <bg-image> || <bg-position> [ / <bg-size> ]? || <repeat-style> || <attachment> || <box> || <box>"
  268. },
  269. "fit-content()": {
  270. "syntax": "fit-content( [ <length> | <percentage> ] )"
  271. },
  272. "fixed-breadth": {
  273. "syntax": "<length-percentage>"
  274. },
  275. "fixed-repeat": {
  276. "syntax": "repeat( [ <positive-integer> ] , [ <line-names>? <fixed-size> ]+ <line-names>? )"
  277. },
  278. "fixed-size": {
  279. "syntax": "<fixed-breadth> | minmax( <fixed-breadth> , <track-breadth> ) | minmax( <inflexible-breadth> , <fixed-breadth> )"
  280. },
  281. "font-stretch-absolute": {
  282. "syntax": "normal | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded | <percentage>"
  283. },
  284. "font-variant-css21": {
  285. "syntax": "[ normal | small-caps ]"
  286. },
  287. "font-weight-absolute": {
  288. "syntax": "normal | bold | <number>"
  289. },
  290. "frequency-percentage": {
  291. "syntax": "<frequency> | <percentage>"
  292. },
  293. "general-enclosed": {
  294. "syntax": "[ <function-token> <any-value> ) ] | ( <ident> <any-value> )"
  295. },
  296. "generic-family": {
  297. "syntax": "serif | sans-serif | cursive | fantasy | monospace"
  298. },
  299. "generic-name": {
  300. "syntax": "serif | sans-serif | cursive | fantasy | monospace"
  301. },
  302. "geometry-box": {
  303. "syntax": "<shape-box> | fill-box | stroke-box | view-box"
  304. },
  305. "gradient": {
  306. "syntax": "<linear-gradient()> | <repeating-linear-gradient()> | <radial-gradient()> | <repeating-radial-gradient()> | <conic-gradient()>"
  307. },
  308. "grayscale()": {
  309. "syntax": "grayscale( <number-percentage> )"
  310. },
  311. "grid-line": {
  312. "syntax": "auto | <custom-ident> | [ <integer> && <custom-ident>? ] | [ span && [ <integer> || <custom-ident> ] ]"
  313. },
  314. "historical-lig-values": {
  315. "syntax": "[ historical-ligatures | no-historical-ligatures ]"
  316. },
  317. "hsl()": {
  318. "syntax": "hsl( <hue> <percentage> <percentage> [ / <alpha-value> ]? ) | hsl( <hue>, <percentage>, <percentage>, <alpha-value>? )"
  319. },
  320. "hsla()": {
  321. "syntax": "hsla( <hue> <percentage> <percentage> [ / <alpha-value> ]? ) | hsla( <hue>, <percentage>, <percentage>, <alpha-value>? )"
  322. },
  323. "hue": {
  324. "syntax": "<number> | <angle>"
  325. },
  326. "hue-rotate()": {
  327. "syntax": "hue-rotate( <angle> )"
  328. },
  329. "id-selector": {
  330. "syntax": "<hash-token>"
  331. },
  332. "image": {
  333. "syntax": "<url> | <image()> | <image-set()> | <element()> | <cross-fade()> | <gradient>"
  334. },
  335. "image()": {
  336. "syntax": "image( <image-tags>? [ <image-src>? , <color>? ]! )"
  337. },
  338. "image-set()": {
  339. "syntax": "image-set( <image-set-option># )"
  340. },
  341. "image-set-option": {
  342. "syntax": "[ <image> | <string> ] <resolution>"
  343. },
  344. "image-src": {
  345. "syntax": "<url> | <string>"
  346. },
  347. "image-tags": {
  348. "syntax": "ltr | rtl"
  349. },
  350. "inflexible-breadth": {
  351. "syntax": "<length> | <percentage> | min-content | max-content | auto"
  352. },
  353. "inset()": {
  354. "syntax": "inset( <length-percentage>{1,4} [ round <'border-radius'> ]? )"
  355. },
  356. "invert()": {
  357. "syntax": "invert( <number-percentage> )"
  358. },
  359. "keyframes-name": {
  360. "syntax": "<custom-ident> | <string>"
  361. },
  362. "keyframe-block": {
  363. "syntax": "<keyframe-selector># {\n <declaration-list>\n}"
  364. },
  365. "keyframe-block-list": {
  366. "syntax": "<keyframe-block>+"
  367. },
  368. "keyframe-selector": {
  369. "syntax": "from | to | <percentage>"
  370. },
  371. "leader()": {
  372. "syntax": "leader( <leader-type> )"
  373. },
  374. "leader-type": {
  375. "syntax": "dotted | solid | space | <string>"
  376. },
  377. "length-percentage": {
  378. "syntax": "<length> | <percentage>"
  379. },
  380. "line-names": {
  381. "syntax": "'[' <custom-ident>* ']'"
  382. },
  383. "line-name-list": {
  384. "syntax": "[ <line-names> | <name-repeat> ]+"
  385. },
  386. "line-style": {
  387. "syntax": "none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset"
  388. },
  389. "line-width": {
  390. "syntax": "<length> | thin | medium | thick"
  391. },
  392. "linear-color-hint": {
  393. "syntax": "<length-percentage>"
  394. },
  395. "linear-color-stop": {
  396. "syntax": "<color> <color-stop-length>?"
  397. },
  398. "linear-gradient()": {
  399. "syntax": "linear-gradient( [ <angle> | to <side-or-corner> ]? , <color-stop-list> )"
  400. },
  401. "mask-layer": {
  402. "syntax": "<mask-reference> || <position> [ / <bg-size> ]? || <repeat-style> || <geometry-box> || [ <geometry-box> | no-clip ] || <compositing-operator> || <masking-mode>"
  403. },
  404. "mask-position": {
  405. "syntax": "[ <length-percentage> | left | center | right ] [ <length-percentage> | top | center | bottom ]?"
  406. },
  407. "mask-reference": {
  408. "syntax": "none | <image> | <mask-source>"
  409. },
  410. "mask-source": {
  411. "syntax": "<url>"
  412. },
  413. "masking-mode": {
  414. "syntax": "alpha | luminance | match-source"
  415. },
  416. "matrix()": {
  417. "syntax": "matrix( <number>#{6} )"
  418. },
  419. "matrix3d()": {
  420. "syntax": "matrix3d( <number>#{16} )"
  421. },
  422. "max()": {
  423. "syntax": "max( <calc-sum># )"
  424. },
  425. "media-and": {
  426. "syntax": "<media-in-parens> [ and <media-in-parens> ]+"
  427. },
  428. "media-condition": {
  429. "syntax": "<media-not> | <media-and> | <media-or> | <media-in-parens>"
  430. },
  431. "media-condition-without-or": {
  432. "syntax": "<media-not> | <media-and> | <media-in-parens>"
  433. },
  434. "media-feature": {
  435. "syntax": "( [ <mf-plain> | <mf-boolean> | <mf-range> ] )"
  436. },
  437. "media-in-parens": {
  438. "syntax": "( <media-condition> ) | <media-feature> | <general-enclosed>"
  439. },
  440. "media-not": {
  441. "syntax": "not <media-in-parens>"
  442. },
  443. "media-or": {
  444. "syntax": "<media-in-parens> [ or <media-in-parens> ]+"
  445. },
  446. "media-query": {
  447. "syntax": "<media-condition> | [ not | only ]? <media-type> [ and <media-condition-without-or> ]?"
  448. },
  449. "media-query-list": {
  450. "syntax": "<media-query>#"
  451. },
  452. "media-type": {
  453. "syntax": "<ident>"
  454. },
  455. "mf-boolean": {
  456. "syntax": "<mf-name>"
  457. },
  458. "mf-name": {
  459. "syntax": "<ident>"
  460. },
  461. "mf-plain": {
  462. "syntax": "<mf-name> : <mf-value>"
  463. },
  464. "mf-range": {
  465. "syntax": "<mf-name> [ '<' | '>' ]? '='? <mf-value>\n| <mf-value> [ '<' | '>' ]? '='? <mf-name>\n| <mf-value> '<' '='? <mf-name> '<' '='? <mf-value>\n| <mf-value> '>' '='? <mf-name> '>' '='? <mf-value>"
  466. },
  467. "mf-value": {
  468. "syntax": "<number> | <dimension> | <ident> | <ratio>"
  469. },
  470. "min()": {
  471. "syntax": "min( <calc-sum># )"
  472. },
  473. "minmax()": {
  474. "syntax": "minmax( [ <length> | <percentage> | <flex> | min-content | max-content | auto ] , [ <length> | <percentage> | <flex> | min-content | max-content | auto ] )"
  475. },
  476. "named-color": {
  477. "syntax": "transparent | aliceblue | antiquewhite | aqua | aquamarine | azure | beige | bisque | black | blanchedalmond | blue | blueviolet | brown | burlywood | cadetblue | chartreuse | chocolate | coral | cornflowerblue | cornsilk | crimson | cyan | darkblue | darkcyan | darkgoldenrod | darkgray | darkgreen | darkgrey | darkkhaki | darkmagenta | darkolivegreen | darkorange | darkorchid | darkred | darksalmon | darkseagreen | darkslateblue | darkslategray | darkslategrey | darkturquoise | darkviolet | deeppink | deepskyblue | dimgray | dimgrey | dodgerblue | firebrick | floralwhite | forestgreen | fuchsia | gainsboro | ghostwhite | gold | goldenrod | gray | green | greenyellow | grey | honeydew | hotpink | indianred | indigo | ivory | khaki | lavender | lavenderblush | lawngreen | lemonchiffon | lightblue | lightcoral | lightcyan | lightgoldenrodyellow | lightgray | lightgreen | lightgrey | lightpink | lightsalmon | lightseagreen | lightskyblue | lightslategray | lightslategrey | lightsteelblue | lightyellow | lime | limegreen | linen | magenta | maroon | mediumaquamarine | mediumblue | mediumorchid | mediumpurple | mediumseagreen | mediumslateblue | mediumspringgreen | mediumturquoise | mediumvioletred | midnightblue | mintcream | mistyrose | moccasin | navajowhite | navy | oldlace | olive | olivedrab | orange | orangered | orchid | palegoldenrod | palegreen | paleturquoise | palevioletred | papayawhip | peachpuff | peru | pink | plum | powderblue | purple | rebeccapurple | red | rosybrown | royalblue | saddlebrown | salmon | sandybrown | seagreen | seashell | sienna | silver | skyblue | slateblue | slategray | slategrey | snow | springgreen | steelblue | tan | teal | thistle | tomato | turquoise | violet | wheat | white | whitesmoke | yellow | yellowgreen"
  478. },
  479. "namespace-prefix": {
  480. "syntax": "<ident>"
  481. },
  482. "ns-prefix": {
  483. "syntax": "[ <ident-token> | '*' ]? '|'"
  484. },
  485. "number-percentage": {
  486. "syntax": "<number> | <percentage>"
  487. },
  488. "numeric-figure-values": {
  489. "syntax": "[ lining-nums | oldstyle-nums ]"
  490. },
  491. "numeric-fraction-values": {
  492. "syntax": "[ diagonal-fractions | stacked-fractions ]"
  493. },
  494. "numeric-spacing-values": {
  495. "syntax": "[ proportional-nums | tabular-nums ]"
  496. },
  497. "nth": {
  498. "syntax": "<an-plus-b> | even | odd"
  499. },
  500. "opacity()": {
  501. "syntax": "opacity( [ <number-percentage> ] )"
  502. },
  503. "overflow-position": {
  504. "syntax": "unsafe | safe"
  505. },
  506. "outline-radius": {
  507. "syntax": "<length> | <percentage>"
  508. },
  509. "page-body": {
  510. "syntax": "<declaration>? [ ; <page-body> ]? | <page-margin-box> <page-body>"
  511. },
  512. "page-margin-box": {
  513. "syntax": "<page-margin-box-type> '{' <declaration-list> '}'"
  514. },
  515. "page-margin-box-type": {
  516. "syntax": "@top-left-corner | @top-left | @top-center | @top-right | @top-right-corner | @bottom-left-corner | @bottom-left | @bottom-center | @bottom-right | @bottom-right-corner | @left-top | @left-middle | @left-bottom | @right-top | @right-middle | @right-bottom"
  517. },
  518. "page-selector-list": {
  519. "syntax": "[ <page-selector># ]?"
  520. },
  521. "page-selector": {
  522. "syntax": "<pseudo-page>+ | <ident> <pseudo-page>*"
  523. },
  524. "perspective()": {
  525. "syntax": "perspective( <length> )"
  526. },
  527. "polygon()": {
  528. "syntax": "polygon( <fill-rule>? , [ <length-percentage> <length-percentage> ]# )"
  529. },
  530. "position": {
  531. "syntax": "[ [ left | center | right ] || [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]? | [ [ left | right ] <length-percentage> ] && [ [ top | bottom ] <length-percentage> ] ]"
  532. },
  533. "pseudo-class-selector": {
  534. "syntax": "':' <ident-token> | ':' <function-token> <any-value> ')'"
  535. },
  536. "pseudo-element-selector": {
  537. "syntax": "':' <pseudo-class-selector>"
  538. },
  539. "pseudo-page": {
  540. "syntax": ": [ left | right | first | blank ]"
  541. },
  542. "quote": {
  543. "syntax": "open-quote | close-quote | no-open-quote | no-close-quote"
  544. },
  545. "radial-gradient()": {
  546. "syntax": "radial-gradient( [ <ending-shape> || <size> ]? [ at <position> ]? , <color-stop-list> )"
  547. },
  548. "relative-selector": {
  549. "syntax": "<combinator>? <complex-selector>"
  550. },
  551. "relative-selector-list": {
  552. "syntax": "<relative-selector>#"
  553. },
  554. "relative-size": {
  555. "syntax": "larger | smaller"
  556. },
  557. "repeat-style": {
  558. "syntax": "repeat-x | repeat-y | [ repeat | space | round | no-repeat ]{1,2}"
  559. },
  560. "repeating-linear-gradient()": {
  561. "syntax": "repeating-linear-gradient( [ <angle> | to <side-or-corner> ]? , <color-stop-list> )"
  562. },
  563. "repeating-radial-gradient()": {
  564. "syntax": "repeating-radial-gradient( [ <ending-shape> || <size> ]? [ at <position> ]? , <color-stop-list> )"
  565. },
  566. "rgb()": {
  567. "syntax": "rgb( <percentage>{3} [ / <alpha-value> ]? ) | rgb( <number>{3} [ / <alpha-value> ]? ) | rgb( <percentage>#{3} , <alpha-value>? ) | rgb( <number>#{3} , <alpha-value>? )"
  568. },
  569. "rgba()": {
  570. "syntax": "rgba( <percentage>{3} [ / <alpha-value> ]? ) | rgba( <number>{3} [ / <alpha-value> ]? ) | rgba( <percentage>#{3} , <alpha-value>? ) | rgba( <number>#{3} , <alpha-value>? )"
  571. },
  572. "rotate()": {
  573. "syntax": "rotate( [ <angle> | <zero> ] )"
  574. },
  575. "rotate3d()": {
  576. "syntax": "rotate3d( <number> , <number> , <number> , [ <angle> | <zero> ] )"
  577. },
  578. "rotateX()": {
  579. "syntax": "rotateX( [ <angle> | <zero> ] )"
  580. },
  581. "rotateY()": {
  582. "syntax": "rotateY( [ <angle> | <zero> ] )"
  583. },
  584. "rotateZ()": {
  585. "syntax": "rotateZ( [ <angle> | <zero> ] )"
  586. },
  587. "saturate()": {
  588. "syntax": "saturate( <number-percentage> )"
  589. },
  590. "scale()": {
  591. "syntax": "scale( <number> , <number>? )"
  592. },
  593. "scale3d()": {
  594. "syntax": "scale3d( <number> , <number> , <number> )"
  595. },
  596. "scaleX()": {
  597. "syntax": "scaleX( <number> )"
  598. },
  599. "scaleY()": {
  600. "syntax": "scaleY( <number> )"
  601. },
  602. "scaleZ()": {
  603. "syntax": "scaleZ( <number> )"
  604. },
  605. "self-position": {
  606. "syntax": "center | start | end | self-start | self-end | flex-start | flex-end"
  607. },
  608. "shape-radius": {
  609. "syntax": "<length-percentage> | closest-side | farthest-side"
  610. },
  611. "skew()": {
  612. "syntax": "skew( [ <angle> | <zero> ] , [ <angle> | <zero> ]? )"
  613. },
  614. "skewX()": {
  615. "syntax": "skewX( [ <angle> | <zero> ] )"
  616. },
  617. "skewY()": {
  618. "syntax": "skewY( [ <angle> | <zero> ] )"
  619. },
  620. "sepia()": {
  621. "syntax": "sepia( <number-percentage> )"
  622. },
  623. "shadow": {
  624. "syntax": "inset? && <length>{2,4} && <color>?"
  625. },
  626. "shadow-t": {
  627. "syntax": "[ <length>{2,3} && <color>? ]"
  628. },
  629. "shape": {
  630. "syntax": "rect(<top>, <right>, <bottom>, <left>)"
  631. },
  632. "shape-box": {
  633. "syntax": "<box> | margin-box"
  634. },
  635. "side-or-corner": {
  636. "syntax": "[ left | right ] || [ top | bottom ]"
  637. },
  638. "single-animation": {
  639. "syntax": "<time> || <timing-function> || <time> || <single-animation-iteration-count> || <single-animation-direction> || <single-animation-fill-mode> || <single-animation-play-state> || [ none | <keyframes-name> ]"
  640. },
  641. "single-animation-direction": {
  642. "syntax": "normal | reverse | alternate | alternate-reverse"
  643. },
  644. "single-animation-fill-mode": {
  645. "syntax": "none | forwards | backwards | both"
  646. },
  647. "single-animation-iteration-count": {
  648. "syntax": "infinite | <number>"
  649. },
  650. "single-animation-play-state": {
  651. "syntax": "running | paused"
  652. },
  653. "single-transition": {
  654. "syntax": "[ none | <single-transition-property> ] || <time> || <timing-function> || <time>"
  655. },
  656. "single-transition-property": {
  657. "syntax": "all | <custom-ident>"
  658. },
  659. "size": {
  660. "syntax": "closest-side | farthest-side | closest-corner | farthest-corner | <length> | <length-percentage>{2}"
  661. },
  662. "step-position": {
  663. "syntax": "jump-start | jump-end | jump-none | jump-both | start | end"
  664. },
  665. "step-timing-function": {
  666. "syntax": "step-start | step-end | steps(<integer>[, <step-position>]?)"
  667. },
  668. "subclass-selector": {
  669. "syntax": "<id-selector> | <class-selector> | <attribute-selector> | <pseudo-class-selector>"
  670. },
  671. "supports-condition": {
  672. "syntax": "not <supports-in-parens> | <supports-in-parens> [ and <supports-in-parens> ]* | <supports-in-parens> [ or <supports-in-parens> ]*"
  673. },
  674. "supports-in-parens": {
  675. "syntax": "( <supports-condition> ) | <supports-feature> | <general-enclosed>"
  676. },
  677. "supports-feature": {
  678. "syntax": "<supports-decl> | <supports-selector-fn>"
  679. },
  680. "supports-decl": {
  681. "syntax": "( <declaration> )"
  682. },
  683. "supports-selector-fn": {
  684. "syntax": "selector( <complex-selector> )"
  685. },
  686. "symbol": {
  687. "syntax": "<string> | <image> | <custom-ident>"
  688. },
  689. "target": {
  690. "syntax": "<target-counter()> | <target-counters()> | <target-text()>"
  691. },
  692. "target-counter()": {
  693. "syntax": "target-counter( [ <string> | <url> ] , <custom-ident> , <counter-style>? )"
  694. },
  695. "target-counters()": {
  696. "syntax": "target-counters( [ <string> | <url> ] , <custom-ident> , <string> , <counter-style>? )"
  697. },
  698. "target-text()": {
  699. "syntax": "target-text( [ <string> | <url> ] , [ content | before | after | first-letter ]? )"
  700. },
  701. "time-percentage": {
  702. "syntax": "<time> | <percentage>"
  703. },
  704. "timing-function": {
  705. "syntax": "linear | <cubic-bezier-timing-function> | <step-timing-function>"
  706. },
  707. "track-breadth": {
  708. "syntax": "<length-percentage> | <flex> | min-content | max-content | auto"
  709. },
  710. "track-list": {
  711. "syntax": "[ <line-names>? [ <track-size> | <track-repeat> ] ]+ <line-names>?"
  712. },
  713. "track-repeat": {
  714. "syntax": "repeat( [ <positive-integer> ] , [ <line-names>? <track-size> ]+ <line-names>? )"
  715. },
  716. "track-size": {
  717. "syntax": "<track-breadth> | minmax( <inflexible-breadth> , <track-breadth> ) | fit-content( [ <length> | <percentage> ] )"
  718. },
  719. "transform-function": {
  720. "syntax": "<matrix()> | <translate()> | <translateX()> | <translateY()> | <scale()> | <scaleX()> | <scaleY()> | <rotate()> | <skew()> | <skewX()> | <skewY()> | <matrix3d()> | <translate3d()> | <translateZ()> | <scale3d()> | <scaleZ()> | <rotate3d()> | <rotateX()> | <rotateY()> | <rotateZ()> | <perspective()>"
  721. },
  722. "transform-list": {
  723. "syntax": "<transform-function>+"
  724. },
  725. "translate()": {
  726. "syntax": "translate( <length-percentage> , <length-percentage>? )"
  727. },
  728. "translate3d()": {
  729. "syntax": "translate3d( <length-percentage> , <length-percentage> , <length> )"
  730. },
  731. "translateX()": {
  732. "syntax": "translateX( <length-percentage> )"
  733. },
  734. "translateY()": {
  735. "syntax": "translateY( <length-percentage> )"
  736. },
  737. "translateZ()": {
  738. "syntax": "translateZ( <length> )"
  739. },
  740. "type-or-unit": {
  741. "syntax": "string | color | url | integer | number | length | angle | time | frequency | cap | ch | em | ex | ic | lh | rlh | rem | vb | vi | vw | vh | vmin | vmax | mm | Q | cm | in | pt | pc | px | deg | grad | rad | turn | ms | s | Hz | kHz | %"
  742. },
  743. "type-selector": {
  744. "syntax": "<wq-name> | <ns-prefix>? '*'"
  745. },
  746. "var()": {
  747. "syntax": "var( <custom-property-name> , <declaration-value>? )"
  748. },
  749. "viewport-length": {
  750. "syntax": "auto | <length-percentage>"
  751. },
  752. "wq-name": {
  753. "syntax": "<ns-prefix>? <ident-token>"
  754. }
  755. }