A simple CSS 2.1 parser and selector.
This is not a browser-grade CSS parser. If you need one, use cssparser + selectors.
Since it's very simple we will start with limitations:
- At-rules are not supported. They will be skipped during parsing.
- Property values are not parsed.
In CSS like
* { width: 5px }
you will get awidth
property with a5px
value as a string. - CDO/CDC comments are not supported.
- Parser is case sensitive. All keywords must be lowercase.
- Unicode escape, like
\26
, is not supported.
- Selector matching support.
- The rules are sorted by specificity.
!important
parsing support.- Has a high-level parsers and low-level, zero-allocation tokenizers.
- No unsafe.
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.