syntaxes.json 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899
  1. {
  2. "abs()": {
  3. "syntax": "abs( <calc-sum> )"
  4. },
  5. "absolute-size": {
  6. "syntax": "xx-small | x-small | small | medium | large | x-large | xx-large | xxx-large"
  7. },
  8. "acos()": {
  9. "syntax": "acos( <calc-sum> )"
  10. },
  11. "alpha-value": {
  12. "syntax": "<number> | <percentage>"
  13. },
  14. "angle-percentage": {
  15. "syntax": "<angle> | <percentage>"
  16. },
  17. "angular-color-hint": {
  18. "syntax": "<angle-percentage>"
  19. },
  20. "angular-color-stop": {
  21. "syntax": "<color> && <color-stop-angle>?"
  22. },
  23. "angular-color-stop-list": {
  24. "syntax": "[ <angular-color-stop> [, <angular-color-hint>]? ]# , <angular-color-stop>"
  25. },
  26. "animateable-feature": {
  27. "syntax": "scroll-position | contents | <custom-ident>"
  28. },
  29. "asin()": {
  30. "syntax": "asin( <calc-sum> )"
  31. },
  32. "atan()": {
  33. "syntax": "atan( <calc-sum> )"
  34. },
  35. "atan2()": {
  36. "syntax": "atan2( <calc-sum>, <calc-sum> )"
  37. },
  38. "attachment": {
  39. "syntax": "scroll | fixed | local"
  40. },
  41. "attr()": {
  42. "syntax": "attr( <attr-name> <type-or-unit>? [, <attr-fallback> ]? )"
  43. },
  44. "attr-matcher": {
  45. "syntax": "[ '~' | '|' | '^' | '$' | '*' ]? '='"
  46. },
  47. "attr-modifier": {
  48. "syntax": "i | s"
  49. },
  50. "attribute-selector": {
  51. "syntax": "'[' <wq-name> ']' | '[' <wq-name> <attr-matcher> [ <string-token> | <ident-token> ] <attr-modifier>? ']'"
  52. },
  53. "auto-repeat": {
  54. "syntax": "repeat( [ auto-fill | auto-fit ] , [ <line-names>? <fixed-size> ]+ <line-names>? )"
  55. },
  56. "auto-track-list": {
  57. "syntax": "[ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>? <auto-repeat>\n[ <line-names>? [ <fixed-size> | <fixed-repeat> ] ]* <line-names>?"
  58. },
  59. "axis": {
  60. "syntax": "block | inline | x | y"
  61. },
  62. "baseline-position": {
  63. "syntax": "[ first | last ]? baseline"
  64. },
  65. "basic-shape": {
  66. "syntax": "<inset()> | <circle()> | <ellipse()> | <polygon()> | <path()>"
  67. },
  68. "bg-image": {
  69. "syntax": "none | <image>"
  70. },
  71. "bg-layer": {
  72. "syntax": "<bg-image> || <bg-position> [ / <bg-size> ]? || <repeat-style> || <attachment> || <box> || <box>"
  73. },
  74. "bg-position": {
  75. "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>? ] ]"
  76. },
  77. "bg-size": {
  78. "syntax": "[ <length-percentage> | auto ]{1,2} | cover | contain"
  79. },
  80. "blur()": {
  81. "syntax": "blur( <length> )"
  82. },
  83. "blend-mode": {
  84. "syntax": "normal | multiply | screen | overlay | darken | lighten | color-dodge | color-burn | hard-light | soft-light | difference | exclusion | hue | saturation | color | luminosity"
  85. },
  86. "box": {
  87. "syntax": "border-box | padding-box | content-box"
  88. },
  89. "brightness()": {
  90. "syntax": "brightness( <number-percentage> )"
  91. },
  92. "calc()": {
  93. "syntax": "calc( <calc-sum> )"
  94. },
  95. "calc-sum": {
  96. "syntax": "<calc-product> [ [ '+' | '-' ] <calc-product> ]*"
  97. },
  98. "calc-product": {
  99. "syntax": "<calc-value> [ '*' <calc-value> | '/' <number> ]*"
  100. },
  101. "calc-value": {
  102. "syntax": "<number> | <dimension> | <percentage> | <calc-constant> | ( <calc-sum> )"
  103. },
  104. "calc-constant": {
  105. "syntax": "e | pi | infinity | -infinity | NaN"
  106. },
  107. "cf-final-image": {
  108. "syntax": "<image> | <color>"
  109. },
  110. "cf-mixing-image": {
  111. "syntax": "<percentage>? && <image>"
  112. },
  113. "circle()": {
  114. "syntax": "circle( [ <shape-radius> ]? [ at <position> ]? )"
  115. },
  116. "clamp()": {
  117. "syntax": "clamp( <calc-sum>#{3} )"
  118. },
  119. "class-selector": {
  120. "syntax": "'.' <ident-token>"
  121. },
  122. "clip-source": {
  123. "syntax": "<url>"
  124. },
  125. "color": {
  126. "syntax": "<rgb()> | <rgba()> | <hsl()> | <hsla()> | <hwb()> | <lab()> | <lch()> | <oklab()> | <oklch()> | <color()> | <hex-color> | <named-color> | <system-color> | <deprecated-system-color> | currentcolor | transparent"
  127. },
  128. "color-stop": {
  129. "syntax": "<color-stop-length> | <color-stop-angle>"
  130. },
  131. "color-stop-angle": {
  132. "syntax": "<angle-percentage>{1,2}"
  133. },
  134. "color-stop-length": {
  135. "syntax": "<length-percentage>{1,2}"
  136. },
  137. "color-stop-list": {
  138. "syntax": "[ <linear-color-stop> [, <linear-color-hint>]? ]# , <linear-color-stop>"
  139. },
  140. "color-interpolation-method": {
  141. "syntax": "in [ <rectangular-color-space> | <polar-color-space> <hue-interpolation-method>? ]"
  142. },
  143. "combinator": {
  144. "syntax": "'>' | '+' | '~' | [ '||' ]"
  145. },
  146. "common-lig-values": {
  147. "syntax": "[ common-ligatures | no-common-ligatures ]"
  148. },
  149. "compat-auto": {
  150. "syntax": "searchfield | textarea | push-button | slider-horizontal | checkbox | radio | square-button | menulist | listbox | meter | progress-bar | button"
  151. },
  152. "composite-style": {
  153. "syntax": "clear | copy | source-over | source-in | source-out | source-atop | destination-over | destination-in | destination-out | destination-atop | xor"
  154. },
  155. "compositing-operator": {
  156. "syntax": "add | subtract | intersect | exclude"
  157. },
  158. "compound-selector": {
  159. "syntax": "[ <type-selector>? <subclass-selector>* [ <pseudo-element-selector> <pseudo-class-selector>* ]* ]!"
  160. },
  161. "compound-selector-list": {
  162. "syntax": "<compound-selector>#"
  163. },
  164. "complex-selector": {
  165. "syntax": "<compound-selector> [ <combinator>? <compound-selector> ]*"
  166. },
  167. "complex-selector-list": {
  168. "syntax": "<complex-selector>#"
  169. },
  170. "conic-gradient()": {
  171. "syntax": "conic-gradient( [ from <angle> ]? [ at <position> ]?, <angular-color-stop-list> )"
  172. },
  173. "contextual-alt-values": {
  174. "syntax": "[ contextual | no-contextual ]"
  175. },
  176. "content-distribution": {
  177. "syntax": "space-between | space-around | space-evenly | stretch"
  178. },
  179. "content-list": {
  180. "syntax": "[ <string> | contents | <image> | <counter> | <quote> | <target> | <leader()> ]+"
  181. },
  182. "content-position": {
  183. "syntax": "center | start | end | flex-start | flex-end"
  184. },
  185. "content-replacement": {
  186. "syntax": "<image>"
  187. },
  188. "contrast()": {
  189. "syntax": "contrast( [ <number-percentage> ] )"
  190. },
  191. "cos()": {
  192. "syntax": "cos( <calc-sum> )"
  193. },
  194. "counter": {
  195. "syntax": "<counter()> | <counters()>"
  196. },
  197. "counter()": {
  198. "syntax": "counter( <counter-name>, <counter-style>? )"
  199. },
  200. "counter-name": {
  201. "syntax": "<custom-ident>"
  202. },
  203. "counter-style": {
  204. "syntax": "<counter-style-name> | symbols()"
  205. },
  206. "counter-style-name": {
  207. "syntax": "<custom-ident>"
  208. },
  209. "counters()": {
  210. "syntax": "counters( <counter-name>, <string>, <counter-style>? )"
  211. },
  212. "cross-fade()": {
  213. "syntax": "cross-fade( <cf-mixing-image> , <cf-final-image>? )"
  214. },
  215. "cubic-bezier-timing-function": {
  216. "syntax": "ease | ease-in | ease-out | ease-in-out | cubic-bezier(<number [0,1]>, <number>, <number [0,1]>, <number>)"
  217. },
  218. "deprecated-system-color": {
  219. "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"
  220. },
  221. "discretionary-lig-values": {
  222. "syntax": "[ discretionary-ligatures | no-discretionary-ligatures ]"
  223. },
  224. "display-box": {
  225. "syntax": "contents | none"
  226. },
  227. "display-inside": {
  228. "syntax": "flow | flow-root | table | flex | grid | ruby"
  229. },
  230. "display-internal": {
  231. "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"
  232. },
  233. "display-legacy": {
  234. "syntax": "inline-block | inline-list-item | inline-table | inline-flex | inline-grid"
  235. },
  236. "display-listitem": {
  237. "syntax": "<display-outside>? && [ flow | flow-root ]? && list-item"
  238. },
  239. "display-outside": {
  240. "syntax": "block | inline | run-in"
  241. },
  242. "drop-shadow()": {
  243. "syntax": "drop-shadow( <length>{2,3} <color>? )"
  244. },
  245. "east-asian-variant-values": {
  246. "syntax": "[ jis78 | jis83 | jis90 | jis04 | simplified | traditional ]"
  247. },
  248. "east-asian-width-values": {
  249. "syntax": "[ full-width | proportional-width ]"
  250. },
  251. "element()": {
  252. "syntax": "element( <id-selector> )"
  253. },
  254. "ellipse()": {
  255. "syntax": "ellipse( [ <shape-radius>{2} ]? [ at <position> ]? )"
  256. },
  257. "ending-shape": {
  258. "syntax": "circle | ellipse"
  259. },
  260. "env()": {
  261. "syntax": "env( <custom-ident> , <declaration-value>? )"
  262. },
  263. "exp()": {
  264. "syntax": "exp( <calc-sum> )"
  265. },
  266. "explicit-track-list": {
  267. "syntax": "[ <line-names>? <track-size> ]+ <line-names>?"
  268. },
  269. "family-name": {
  270. "syntax": "<string> | <custom-ident>+"
  271. },
  272. "feature-tag-value": {
  273. "syntax": "<string> [ <integer> | on | off ]?"
  274. },
  275. "feature-type": {
  276. "syntax": "@stylistic | @historical-forms | @styleset | @character-variant | @swash | @ornaments | @annotation"
  277. },
  278. "feature-value-block": {
  279. "syntax": "<feature-type> '{' <feature-value-declaration-list> '}'"
  280. },
  281. "feature-value-block-list": {
  282. "syntax": "<feature-value-block>+"
  283. },
  284. "feature-value-declaration": {
  285. "syntax": "<custom-ident>: <integer>+;"
  286. },
  287. "feature-value-declaration-list": {
  288. "syntax": "<feature-value-declaration>"
  289. },
  290. "feature-value-name": {
  291. "syntax": "<custom-ident>"
  292. },
  293. "fill-rule": {
  294. "syntax": "nonzero | evenodd"
  295. },
  296. "filter-function": {
  297. "syntax": "<blur()> | <brightness()> | <contrast()> | <drop-shadow()> | <grayscale()> | <hue-rotate()> | <invert()> | <opacity()> | <saturate()> | <sepia()>"
  298. },
  299. "filter-function-list": {
  300. "syntax": "[ <filter-function> | <url> ]+"
  301. },
  302. "final-bg-layer": {
  303. "syntax": "<'background-color'> || <bg-image> || <bg-position> [ / <bg-size> ]? || <repeat-style> || <attachment> || <box> || <box>"
  304. },
  305. "fixed-breadth": {
  306. "syntax": "<length-percentage>"
  307. },
  308. "fixed-repeat": {
  309. "syntax": "repeat( [ <integer [1,∞]> ] , [ <line-names>? <fixed-size> ]+ <line-names>? )"
  310. },
  311. "fixed-size": {
  312. "syntax": "<fixed-breadth> | minmax( <fixed-breadth> , <track-breadth> ) | minmax( <inflexible-breadth> , <fixed-breadth> )"
  313. },
  314. "font-stretch-absolute": {
  315. "syntax": "normal | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded | <percentage>"
  316. },
  317. "font-variant-css21": {
  318. "syntax": "[ normal | small-caps ]"
  319. },
  320. "font-weight-absolute": {
  321. "syntax": "normal | bold | <number [1,1000]>"
  322. },
  323. "frequency-percentage": {
  324. "syntax": "<frequency> | <percentage>"
  325. },
  326. "general-enclosed": {
  327. "syntax": "[ <function-token> <any-value> ) ] | ( <ident> <any-value> )"
  328. },
  329. "generic-family": {
  330. "syntax": "serif | sans-serif | cursive | fantasy | monospace"
  331. },
  332. "generic-name": {
  333. "syntax": "serif | sans-serif | cursive | fantasy | monospace"
  334. },
  335. "geometry-box": {
  336. "syntax": "<shape-box> | fill-box | stroke-box | view-box"
  337. },
  338. "gradient": {
  339. "syntax": "<linear-gradient()> | <repeating-linear-gradient()> | <radial-gradient()> | <repeating-radial-gradient()> | <conic-gradient()> | <repeating-conic-gradient()>"
  340. },
  341. "grayscale()": {
  342. "syntax": "grayscale( <number-percentage> )"
  343. },
  344. "grid-line": {
  345. "syntax": "auto | <custom-ident> | [ <integer> && <custom-ident>? ] | [ span && [ <integer> || <custom-ident> ] ]"
  346. },
  347. "historical-lig-values": {
  348. "syntax": "[ historical-ligatures | no-historical-ligatures ]"
  349. },
  350. "hsl()": {
  351. "syntax": "hsl( <hue> <percentage> <percentage> [ / <alpha-value> ]? ) | hsl( <hue>, <percentage>, <percentage>, <alpha-value>? )"
  352. },
  353. "hsla()": {
  354. "syntax": "hsla( <hue> <percentage> <percentage> [ / <alpha-value> ]? ) | hsla( <hue>, <percentage>, <percentage>, <alpha-value>? )"
  355. },
  356. "hue": {
  357. "syntax": "<number> | <angle>"
  358. },
  359. "hue-rotate()": {
  360. "syntax": "hue-rotate( <angle> )"
  361. },
  362. "hue-interpolation-method": {
  363. "syntax": "[ shorter | longer | increasing | decreasing ] hue"
  364. },
  365. "hwb()": {
  366. "syntax": "hwb( [<hue> | none] [<percentage> | none] [<percentage> | none] [ / [<alpha-value> | none] ]? )"
  367. },
  368. "hypot()": {
  369. "syntax": "hypot( <calc-sum># )"
  370. },
  371. "id-selector": {
  372. "syntax": "<hash-token>"
  373. },
  374. "image": {
  375. "syntax": "<url> | <image()> | <image-set()> | <element()> | <paint()> | <cross-fade()> | <gradient>"
  376. },
  377. "image()": {
  378. "syntax": "image( <image-tags>? [ <image-src>? , <color>? ]! )"
  379. },
  380. "image-set()": {
  381. "syntax": "image-set( <image-set-option># )"
  382. },
  383. "image-set-option": {
  384. "syntax": "[ <image> | <string> ] [ <resolution> || type(<string>) ]"
  385. },
  386. "image-src": {
  387. "syntax": "<url> | <string>"
  388. },
  389. "image-tags": {
  390. "syntax": "ltr | rtl"
  391. },
  392. "inflexible-breadth": {
  393. "syntax": "<length-percentage> | min-content | max-content | auto"
  394. },
  395. "inset()": {
  396. "syntax": "inset( <length-percentage>{1,4} [ round <'border-radius'> ]? )"
  397. },
  398. "invert()": {
  399. "syntax": "invert( <number-percentage> )"
  400. },
  401. "keyframes-name": {
  402. "syntax": "<custom-ident> | <string>"
  403. },
  404. "keyframe-block": {
  405. "syntax": "<keyframe-selector># {\n <declaration-list>\n}"
  406. },
  407. "keyframe-block-list": {
  408. "syntax": "<keyframe-block>+"
  409. },
  410. "keyframe-selector": {
  411. "syntax": "from | to | <percentage> | <timeline-range-name> <percentage>"
  412. },
  413. "lab()": {
  414. "syntax": "lab( [<percentage> | <number> | none] [ <percentage> | <number> | none] [ <percentage> | <number> | none] [ / [<alpha-value> | none] ]? )"
  415. },
  416. "layer()": {
  417. "syntax": "layer( <layer-name> )"
  418. },
  419. "layer-name": {
  420. "syntax": "<ident> [ '.' <ident> ]*"
  421. },
  422. "lch()": {
  423. "syntax": "lch( [<percentage> | <number> | none] [ <percentage> | <number> | none] [ <hue> | none] [ / [<alpha-value> | none] ]? )"
  424. },
  425. "leader()": {
  426. "syntax": "leader( <leader-type> )"
  427. },
  428. "leader-type": {
  429. "syntax": "dotted | solid | space | <string>"
  430. },
  431. "length-percentage": {
  432. "syntax": "<length> | <percentage>"
  433. },
  434. "light-dark()": {
  435. "syntax": "light-dark( <color>, <color> )"
  436. },
  437. "line-names": {
  438. "syntax": "'[' <custom-ident>* ']'"
  439. },
  440. "line-name-list": {
  441. "syntax": "[ <line-names> | <name-repeat> ]+"
  442. },
  443. "line-style": {
  444. "syntax": "none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset"
  445. },
  446. "line-width": {
  447. "syntax": "<length> | thin | medium | thick"
  448. },
  449. "linear-color-hint": {
  450. "syntax": "<length-percentage>"
  451. },
  452. "linear-color-stop": {
  453. "syntax": "<color> <color-stop-length>?"
  454. },
  455. "linear-gradient()": {
  456. "syntax": "linear-gradient( [ [ <angle> | to <side-or-corner> ] || <color-interpolation-method> ]? , <color-stop-list> )"
  457. },
  458. "log()": {
  459. "syntax": "log( <calc-sum>, <calc-sum>? )"
  460. },
  461. "mask-layer": {
  462. "syntax": "<mask-reference> || <position> [ / <bg-size> ]? || <repeat-style> || <geometry-box> || [ <geometry-box> | no-clip ] || <compositing-operator> || <masking-mode>"
  463. },
  464. "mask-position": {
  465. "syntax": "[ <length-percentage> | left | center | right ] [ <length-percentage> | top | center | bottom ]?"
  466. },
  467. "mask-reference": {
  468. "syntax": "none | <image> | <mask-source>"
  469. },
  470. "mask-source": {
  471. "syntax": "<url>"
  472. },
  473. "masking-mode": {
  474. "syntax": "alpha | luminance | match-source"
  475. },
  476. "matrix()": {
  477. "syntax": "matrix( <number>#{6} )"
  478. },
  479. "matrix3d()": {
  480. "syntax": "matrix3d( <number>#{16} )"
  481. },
  482. "max()": {
  483. "syntax": "max( <calc-sum># )"
  484. },
  485. "media-and": {
  486. "syntax": "<media-in-parens> [ and <media-in-parens> ]+"
  487. },
  488. "media-condition": {
  489. "syntax": "<media-not> | <media-and> | <media-or> | <media-in-parens>"
  490. },
  491. "media-condition-without-or": {
  492. "syntax": "<media-not> | <media-and> | <media-in-parens>"
  493. },
  494. "media-feature": {
  495. "syntax": "( [ <mf-plain> | <mf-boolean> | <mf-range> ] )"
  496. },
  497. "media-in-parens": {
  498. "syntax": "( <media-condition> ) | <media-feature> | <general-enclosed>"
  499. },
  500. "media-not": {
  501. "syntax": "not <media-in-parens>"
  502. },
  503. "media-or": {
  504. "syntax": "<media-in-parens> [ or <media-in-parens> ]+"
  505. },
  506. "media-query": {
  507. "syntax": "<media-condition> | [ not | only ]? <media-type> [ and <media-condition-without-or> ]?"
  508. },
  509. "media-query-list": {
  510. "syntax": "<media-query>#"
  511. },
  512. "media-type": {
  513. "syntax": "<ident>"
  514. },
  515. "mf-boolean": {
  516. "syntax": "<mf-name>"
  517. },
  518. "mf-name": {
  519. "syntax": "<ident>"
  520. },
  521. "mf-plain": {
  522. "syntax": "<mf-name> : <mf-value>"
  523. },
  524. "mf-range": {
  525. "syntax": "<mf-name> [ '<' | '>' ]? '='? <mf-value>\n| <mf-value> [ '<' | '>' ]? '='? <mf-name>\n| <mf-value> '<' '='? <mf-name> '<' '='? <mf-value>\n| <mf-value> '>' '='? <mf-name> '>' '='? <mf-value>"
  526. },
  527. "mf-value": {
  528. "syntax": "<number> | <dimension> | <ident> | <ratio>"
  529. },
  530. "min()": {
  531. "syntax": "min( <calc-sum># )"
  532. },
  533. "minmax()": {
  534. "syntax": "minmax( [ <length-percentage> | min-content | max-content | auto ] , [ <length-percentage> | <flex> | min-content | max-content | auto ] )"
  535. },
  536. "mod()": {
  537. "syntax": "mod( <calc-sum>, <calc-sum> )"
  538. },
  539. "name-repeat": {
  540. "syntax": "repeat( [ <integer [1,∞]> | auto-fill ], <line-names>+ )"
  541. },
  542. "named-color": {
  543. "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"
  544. },
  545. "namespace-prefix": {
  546. "syntax": "<ident>"
  547. },
  548. "ns-prefix": {
  549. "syntax": "[ <ident-token> | '*' ]? '|'"
  550. },
  551. "number-percentage": {
  552. "syntax": "<number> | <percentage>"
  553. },
  554. "numeric-figure-values": {
  555. "syntax": "[ lining-nums | oldstyle-nums ]"
  556. },
  557. "numeric-fraction-values": {
  558. "syntax": "[ diagonal-fractions | stacked-fractions ]"
  559. },
  560. "numeric-spacing-values": {
  561. "syntax": "[ proportional-nums | tabular-nums ]"
  562. },
  563. "nth": {
  564. "syntax": "<an-plus-b> | even | odd"
  565. },
  566. "opacity()": {
  567. "syntax": "opacity( [ <number-percentage> ] )"
  568. },
  569. "overflow-position": {
  570. "syntax": "unsafe | safe"
  571. },
  572. "outline-radius": {
  573. "syntax": "<length> | <percentage>"
  574. },
  575. "page-body": {
  576. "syntax": "<declaration>? [ ; <page-body> ]? | <page-margin-box> <page-body>"
  577. },
  578. "page-margin-box": {
  579. "syntax": "<page-margin-box-type> '{' <declaration-list> '}'"
  580. },
  581. "page-margin-box-type": {
  582. "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"
  583. },
  584. "page-selector-list": {
  585. "syntax": "[ <page-selector># ]?"
  586. },
  587. "page-selector": {
  588. "syntax": "<pseudo-page>+ | <ident> <pseudo-page>*"
  589. },
  590. "page-size": {
  591. "syntax": "A5 | A4 | A3 | B5 | B4 | JIS-B5 | JIS-B4 | letter | legal | ledger"
  592. },
  593. "path()": {
  594. "syntax": "path( [ <fill-rule>, ]? <string> )"
  595. },
  596. "paint()": {
  597. "syntax": "paint( <ident>, <declaration-value>? )"
  598. },
  599. "perspective()": {
  600. "syntax": "perspective( [ <length [0,∞]> | none ] )"
  601. },
  602. "polygon()": {
  603. "syntax": "polygon( <fill-rule>? , [ <length-percentage> <length-percentage> ]# )"
  604. },
  605. "polar-color-space": {
  606. "syntax": "hsl | hwb | lch | oklch"
  607. },
  608. "position": {
  609. "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> ] ]"
  610. },
  611. "pow()": {
  612. "syntax": "pow( <calc-sum>, <calc-sum> )"
  613. },
  614. "pseudo-class-selector": {
  615. "syntax": "':' <ident-token> | ':' <function-token> <any-value> ')'"
  616. },
  617. "pseudo-element-selector": {
  618. "syntax": "':' <pseudo-class-selector>"
  619. },
  620. "pseudo-page": {
  621. "syntax": ": [ left | right | first | blank ]"
  622. },
  623. "quote": {
  624. "syntax": "open-quote | close-quote | no-open-quote | no-close-quote"
  625. },
  626. "radial-gradient()": {
  627. "syntax": "radial-gradient( [ <ending-shape> || <size> ]? [ at <position> ]? , <color-stop-list> )"
  628. },
  629. "ratio": {
  630. "syntax": "<number [0,∞]> [ / <number [0,∞]> ]?"
  631. },
  632. "ray()": {
  633. "syntax": "ray( <angle> && <ray-size>? && contain? && [at <position>]? )"
  634. },
  635. "ray-size": {
  636. "syntax": "closest-side | closest-corner | farthest-side | farthest-corner | sides"
  637. },
  638. "rectangular-color-space": {
  639. "syntax": "srgb | srgb-linear | display-p3 | a98-rgb | prophoto-rgb | rec2020 | lab | oklab | xyz | xyz-d50 | xyz-d65"
  640. },
  641. "relative-selector": {
  642. "syntax": "<combinator>? <complex-selector>"
  643. },
  644. "relative-selector-list": {
  645. "syntax": "<relative-selector>#"
  646. },
  647. "relative-size": {
  648. "syntax": "larger | smaller"
  649. },
  650. "rem()": {
  651. "syntax": "rem( <calc-sum>, <calc-sum> )"
  652. },
  653. "repeat-style": {
  654. "syntax": "repeat-x | repeat-y | [ repeat | space | round | no-repeat ]{1,2}"
  655. },
  656. "repeating-conic-gradient()": {
  657. "syntax": "repeating-conic-gradient( [ from <angle> ]? [ at <position> ]?, <angular-color-stop-list> )"
  658. },
  659. "repeating-linear-gradient()": {
  660. "syntax": "repeating-linear-gradient( [ <angle> | to <side-or-corner> ]? , <color-stop-list> )"
  661. },
  662. "repeating-radial-gradient()": {
  663. "syntax": "repeating-radial-gradient( [ <ending-shape> || <size> ]? [ at <position> ]? , <color-stop-list> )"
  664. },
  665. "reversed-counter-name": {
  666. "syntax": "reversed( <counter-name> )"
  667. },
  668. "rgb()": {
  669. "syntax": "rgb( <percentage>{3} [ / <alpha-value> ]? ) | rgb( <number>{3} [ / <alpha-value> ]? ) | rgb( <percentage>#{3} , <alpha-value>? ) | rgb( <number>#{3} , <alpha-value>? )"
  670. },
  671. "rgba()": {
  672. "syntax": "rgba( <percentage>{3} [ / <alpha-value> ]? ) | rgba( <number>{3} [ / <alpha-value> ]? ) | rgba( <percentage>#{3} , <alpha-value>? ) | rgba( <number>#{3} , <alpha-value>? )"
  673. },
  674. "rotate()": {
  675. "syntax": "rotate( [ <angle> | <zero> ] )"
  676. },
  677. "rotate3d()": {
  678. "syntax": "rotate3d( <number> , <number> , <number> , [ <angle> | <zero> ] )"
  679. },
  680. "rotateX()": {
  681. "syntax": "rotateX( [ <angle> | <zero> ] )"
  682. },
  683. "rotateY()": {
  684. "syntax": "rotateY( [ <angle> | <zero> ] )"
  685. },
  686. "rotateZ()": {
  687. "syntax": "rotateZ( [ <angle> | <zero> ] )"
  688. },
  689. "round()": {
  690. "syntax": "round( <rounding-strategy>?, <calc-sum>, <calc-sum> )"
  691. },
  692. "rounding-strategy": {
  693. "syntax": "nearest | up | down | to-zero"
  694. },
  695. "saturate()": {
  696. "syntax": "saturate( <number-percentage> )"
  697. },
  698. "scale()": {
  699. "syntax": "scale( [ <number> | <percentage> ]#{1,2} )"
  700. },
  701. "scale3d()": {
  702. "syntax": "scale3d( [ <number> | <percentage> ]#{3} )"
  703. },
  704. "scaleX()": {
  705. "syntax": "scaleX( [ <number> | <percentage> ] )"
  706. },
  707. "scaleY()": {
  708. "syntax": "scaleY( [ <number> | <percentage> ] )"
  709. },
  710. "scaleZ()": {
  711. "syntax": "scaleZ( [ <number> | <percentage> ] )"
  712. },
  713. "scroll()": {
  714. "syntax": "scroll( [ <axis> || <scroller> ]? )"
  715. },
  716. "scroller": {
  717. "syntax": "root | nearest | self"
  718. },
  719. "self-position": {
  720. "syntax": "center | start | end | self-start | self-end | flex-start | flex-end"
  721. },
  722. "shape-radius": {
  723. "syntax": "<length-percentage> | closest-side | farthest-side"
  724. },
  725. "sign()": {
  726. "syntax": "sign( <calc-sum> )"
  727. },
  728. "skew()": {
  729. "syntax": "skew( [ <angle> | <zero> ] , [ <angle> | <zero> ]? )"
  730. },
  731. "skewX()": {
  732. "syntax": "skewX( [ <angle> | <zero> ] )"
  733. },
  734. "skewY()": {
  735. "syntax": "skewY( [ <angle> | <zero> ] )"
  736. },
  737. "sepia()": {
  738. "syntax": "sepia( <number-percentage> )"
  739. },
  740. "shadow": {
  741. "syntax": "inset? && <length>{2,4} && <color>?"
  742. },
  743. "shadow-t": {
  744. "syntax": "[ <length>{2,3} && <color>? ]"
  745. },
  746. "shape": {
  747. "syntax": "rect(<top>, <right>, <bottom>, <left>)"
  748. },
  749. "shape-box": {
  750. "syntax": "<box> | margin-box"
  751. },
  752. "side-or-corner": {
  753. "syntax": "[ left | right ] || [ top | bottom ]"
  754. },
  755. "sin()": {
  756. "syntax": "sin( <calc-sum> )"
  757. },
  758. "single-animation": {
  759. "syntax": "<'animation-duration'> || <easing-function> || <'animation-delay'> || <single-animation-iteration-count> || <single-animation-direction> || <single-animation-fill-mode> || <single-animation-play-state> || [ none | <keyframes-name> ] || <single-animation-timeline>"
  760. },
  761. "single-animation-direction": {
  762. "syntax": "normal | reverse | alternate | alternate-reverse"
  763. },
  764. "single-animation-fill-mode": {
  765. "syntax": "none | forwards | backwards | both"
  766. },
  767. "single-animation-iteration-count": {
  768. "syntax": "infinite | <number>"
  769. },
  770. "single-animation-play-state": {
  771. "syntax": "running | paused"
  772. },
  773. "single-animation-timeline": {
  774. "syntax": "auto | none | <dashed-ident> | <scroll()> | <view()>"
  775. },
  776. "single-transition": {
  777. "syntax": "[ none | <single-transition-property> ] || <time> || <easing-function> || <time> || <transition-behavior-value>"
  778. },
  779. "single-transition-property": {
  780. "syntax": "all | <custom-ident>"
  781. },
  782. "size": {
  783. "syntax": "closest-side | farthest-side | closest-corner | farthest-corner | <length> | <length-percentage>{2}"
  784. },
  785. "sqrt()": {
  786. "syntax": "sqrt( <calc-sum> )"
  787. },
  788. "step-position": {
  789. "syntax": "jump-start | jump-end | jump-none | jump-both | start | end"
  790. },
  791. "step-timing-function": {
  792. "syntax": "step-start | step-end | steps(<integer>[, <step-position>]?)"
  793. },
  794. "subclass-selector": {
  795. "syntax": "<id-selector> | <class-selector> | <attribute-selector> | <pseudo-class-selector>"
  796. },
  797. "supports-condition": {
  798. "syntax": "not <supports-in-parens> | <supports-in-parens> [ and <supports-in-parens> ]* | <supports-in-parens> [ or <supports-in-parens> ]*"
  799. },
  800. "supports-in-parens": {
  801. "syntax": "( <supports-condition> ) | <supports-feature> | <general-enclosed>"
  802. },
  803. "supports-feature": {
  804. "syntax": "<supports-decl> | <supports-selector-fn>"
  805. },
  806. "supports-decl": {
  807. "syntax": "( <declaration> )"
  808. },
  809. "supports-selector-fn": {
  810. "syntax": "selector( <complex-selector> )"
  811. },
  812. "symbol": {
  813. "syntax": "<string> | <image> | <custom-ident>"
  814. },
  815. "system-color": {
  816. "syntax": "AccentColor | AccentColorText | ActiveText | ButtonBorder | ButtonFace | ButtonText | Canvas | CanvasText | Field | FieldText | GrayText | Highlight | HighlightText | LinkText | Mark | MarkText | SelectedItem | SelectedItemText | VisitedText"
  817. },
  818. "tan()": {
  819. "syntax": "tan( <calc-sum> )"
  820. },
  821. "target": {
  822. "syntax": "<target-counter()> | <target-counters()> | <target-text()>"
  823. },
  824. "target-counter()": {
  825. "syntax": "target-counter( [ <string> | <url> ] , <custom-ident> , <counter-style>? )"
  826. },
  827. "target-counters()": {
  828. "syntax": "target-counters( [ <string> | <url> ] , <custom-ident> , <string> , <counter-style>? )"
  829. },
  830. "target-text()": {
  831. "syntax": "target-text( [ <string> | <url> ] , [ content | before | after | first-letter ]? )"
  832. },
  833. "time-percentage": {
  834. "syntax": "<time> | <percentage>"
  835. },
  836. "timeline-range-name": {
  837. "syntax": "cover | contain | entry | exit | entry-crossing | exit-crossing"
  838. },
  839. "easing-function": {
  840. "syntax": "linear | <cubic-bezier-timing-function> | <step-timing-function>"
  841. },
  842. "track-breadth": {
  843. "syntax": "<length-percentage> | <flex> | min-content | max-content | auto"
  844. },
  845. "track-list": {
  846. "syntax": "[ <line-names>? [ <track-size> | <track-repeat> ] ]+ <line-names>?"
  847. },
  848. "track-repeat": {
  849. "syntax": "repeat( [ <integer [1,∞]> ] , [ <line-names>? <track-size> ]+ <line-names>? )"
  850. },
  851. "track-size": {
  852. "syntax": "<track-breadth> | minmax( <inflexible-breadth> , <track-breadth> ) | fit-content( <length-percentage> )"
  853. },
  854. "transform-function": {
  855. "syntax": "<matrix()> | <translate()> | <translateX()> | <translateY()> | <scale()> | <scaleX()> | <scaleY()> | <rotate()> | <skew()> | <skewX()> | <skewY()> | <matrix3d()> | <translate3d()> | <translateZ()> | <scale3d()> | <scaleZ()> | <rotate3d()> | <rotateX()> | <rotateY()> | <rotateZ()> | <perspective()>"
  856. },
  857. "transform-list": {
  858. "syntax": "<transform-function>+"
  859. },
  860. "transition-behavior-value": {
  861. "syntax": "normal | allow-discrete"
  862. },
  863. "translate()": {
  864. "syntax": "translate( <length-percentage> , <length-percentage>? )"
  865. },
  866. "translate3d()": {
  867. "syntax": "translate3d( <length-percentage> , <length-percentage> , <length> )"
  868. },
  869. "translateX()": {
  870. "syntax": "translateX( <length-percentage> )"
  871. },
  872. "translateY()": {
  873. "syntax": "translateY( <length-percentage> )"
  874. },
  875. "translateZ()": {
  876. "syntax": "translateZ( <length> )"
  877. },
  878. "type-or-unit": {
  879. "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 | %"
  880. },
  881. "type-selector": {
  882. "syntax": "<wq-name> | <ns-prefix>? '*'"
  883. },
  884. "var()": {
  885. "syntax": "var( <custom-property-name> , <declaration-value>? )"
  886. },
  887. "view()": {
  888. "syntax": "view([<axis> || <'view-timeline-inset'>]?)"
  889. },
  890. "viewport-length": {
  891. "syntax": "auto | <length-percentage>"
  892. },
  893. "visual-box": {
  894. "syntax": "content-box | padding-box | border-box"
  895. },
  896. "wq-name": {
  897. "syntax": "<ns-prefix>? <ident-token>"
  898. }
  899. }