11 releases

0.2.8 Feb 19, 2024
0.2.7 Feb 18, 2024
0.2.5 Jan 17, 2023
0.2.4 Dec 1, 2021
0.1.1 Jan 20, 2019

#123 in Parser implementations

Download history 3945/week @ 2024-08-19 4083/week @ 2024-08-26 3811/week @ 2024-09-02 3949/week @ 2024-09-09 3710/week @ 2024-09-16 4529/week @ 2024-09-23 5251/week @ 2024-09-30 5890/week @ 2024-10-07 5272/week @ 2024-10-14 4743/week @ 2024-10-21 4564/week @ 2024-10-28 4811/week @ 2024-11-04 4812/week @ 2024-11-11 4289/week @ 2024-11-18 4008/week @ 2024-11-25 4145/week @ 2024-12-02

17,771 downloads per month
Used in 22 crates (13 directly)

MIT/Apache

580KB
6.5K SLoC

css-color

Parse color strings from CSS Color Module Level 4. All legacy sRGB forms are supported:

The none keyword is supported. "Missing" color components behave identically to zero.

Usage

First, add this to your Cargo.toml:

[dependencies]
css-color = "0.2.8"

Example

use css_color::Srgb;

fn main() {
    let lime = Srgb::new(0., 1., 0., 1.);
    assert_eq!(lime, "#0f0".parse().unwrap());
    assert_eq!(lime, "rgb(0 255 0)".parse().unwrap());
    assert_eq!(lime, "rgb(0% 100% 0%)".parse().unwrap());
    assert_eq!(lime, "hsl(120deg 100% 50% / 100%)".parse().unwrap());
    assert_eq!(lime, "hwb(120 0% 0% / 1)".parse().unwrap());
    assert_eq!(lime, "lime".parse().unwrap());
}

Supported Rust Versions

The minimum supported Rust version is 1.55. Earlier versions may compile but parsing can reject certain valid numeric values.

License

This repository is licensed under either of

at your option.

Contributions

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.

No runtime deps