1 | hljs.registerLanguage("css",(()=>{"use strict";return e=>{
|
2 | var n="[a-zA-Z-][a-zA-Z0-9_-]*",a={
|
3 | begin:/([*]\s?)?(?:[A-Z_.\-\\]+|--[a-zA-Z0-9_-]+)\s*(\/\*\*\/)?:/,
|
4 | returnBegin:!0,end:";",endsWithParent:!0,contains:[{className:"attribute",
|
5 | begin:/\S/,end:":",excludeEnd:!0,starts:{endsWithParent:!0,excludeEnd:!0,
|
6 | contains:[{begin:/[\w-]+\(/,returnBegin:!0,contains:[{className:"built_in",
|
7 | begin:/[\w-]+/},{begin:/\(/,end:/\)/,
|
8 | contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.CSS_NUMBER_MODE]}]
|
9 | },e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_BLOCK_COMMENT_MODE,{
|
10 | className:"number",begin:"#[0-9A-Fa-f]+"},{className:"meta",begin:"!important"}]
|
11 | }}]};return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,
|
12 | contains:[e.C_BLOCK_COMMENT_MODE,{className:"selector-id",
|
13 | begin:/#[A-Za-z0-9_-]+/},{className:"selector-class",begin:"\\."+n},{
|
14 | className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",
|
15 | contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},{className:"selector-pseudo",
|
16 | begin:/:(:)?[a-zA-Z0-9_+()"'.-]+/},{begin:"@(page|font-face)",
|
17 | lexemes:"@[a-z-]+",keywords:"@page @font-face"},{begin:"@",end:"[{;]",
|
18 | illegal:/:/,returnBegin:!0,contains:[{className:"keyword",
|
19 | begin:/@-?\w[\w]*(-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,
|
20 | relevance:0,keywords:"and or not only",contains:[{begin:/[a-z-]+:/,
|
21 | className:"attribute"},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.CSS_NUMBER_MODE]
|
22 | }]},{className:"selector-tag",begin:n,relevance:0},{begin:/\{/,end:/\}/,
|
23 | illegal:/\S/,contains:[e.C_BLOCK_COMMENT_MODE,{begin:/;/},a]}]}}})()); |
\ | No newline at end of file |