Prism.languages.css = { 'comment': /\/\*[\w\W]*?\*\//g, 'atrule': { pattern: /@[\w-]+?.*?(;|(?=\s*\{))/gi, inside: { 'punctuation': /[;:]/g } }, 'url': /url\((?:(["'])(\\\n|\\?.)*?\1|.*?)\)/gi, 'selector': /[^\{\}\s][^\{\};]*(?=\s*\{)/g, 'string': /("|')(\\\n|\\?.)*?\1/g, 'property': /(\b|\B)[\w-]+(?=\s*:)/ig, 'important': /\B!important\b/gi, 'punctuation': /[\{\};:]/g, 'function': /[-a-z0-9]+(?=\()/ig }; if (Prism.languages.markup) { Prism.languages.insertBefore('markup', 'tag', { 'style': { pattern: /[\w\W]*?<\/style>/ig, inside: { 'tag': { pattern: /|<\/style>/ig, inside: Prism.languages.markup.tag.inside }, rest: Prism.languages.css }, alias: 'language-css' } }); Prism.languages.insertBefore('inside', 'attr-value', { 'style-attr': { pattern: /\s*style=("|').+?\1/ig, inside: { 'attr-name': { pattern: /^\s*style/ig, inside: Prism.languages.markup.tag.inside }, 'punctuation': /^\s*=\s*['"]|['"]\s*$/, 'attr-value': { pattern: /.+/gi, inside: Prism.languages.css } }, alias: 'language-css' } }, Prism.languages.markup.tag); }