CSS Color Module Level 4-compliant color string parser
css-color-l4
is a CSS Color Module Level 4-compliant CSS color value parser.
It parses any color values defined in the CSS Color Module Level 4, and refuses to parse any other values. This is to ensure complete consistency with, for instance, web browsers. In comparison, most other JS color parsers both fail to parse color values that browsers will accept.
Used by:
- colornorm | Normalize CSS colors in a spec compliant way
Other key points:
- handles all the edge cases from the spec
- 100% test coverage, including those edge cases
- is written in TypeScript and includes types
- this library doesn't include any color conversion functionality, but exports colors in an ideal way for libraries such as color-convert
- The
color()
function syntax is currently not supported. - System colors (i.e. like
VisitedText
) are currently not supported. (Named colors likered
are supported)
const { parseColor } = require('css-color-l4')
const color = parseColor('hsl(3051e-2, 80%, 35%)')
/*
color = {
type: 'hsl',
h: 31,
s: 80,
l: 35,
alpha: 1
}
*/
npm install css-color-l4 --save
# yarn add css-color-l4
Alternatively, there are also client web builds available:
<!-- window.CSSColor -->
<script src="https://unpkg.com/css-color-l4/dist/css-color-l4.umd.js"></script>
MIT