CSS::Module::CSS3::Selectors

CSS3 Module Level 3 Selectors

[Raku CSS Project] / [CSS-Module-CSS3-Selectors]

CSS-Module-CSS3-Selectors-raku

This module extends CSS::Grammar::CSS3, to implement parsing for CSS Selectors Module Level 3. It provides grammar CSS::Module::CSS3::Selectors and actions class CSS::Module::CSS3::Selectors::Actions.

Example

use CSS::Module::CSS3::Selectors;
my $actions = CSS::Module::CSS3::Selectors::Actions.new;
CSS::Module::CSS3::Selectors.parse('tr:nth-child(2n+1) span[class="example"]', :rule<selectors>, :$actions);
say $/.ast.perl;

Some of the key extensions are:

  • namespaces: svg|circle

  • attribute selections: span[class="example"]

  • structural selectors: tr:nth-child(2n+1) foo:nth-last-child(odd)

  • negation: body > h2:not(:first-of-type):not(:last-of-type)

See Also

CSS::Module::CSS3::Selectors v0.0.6

CSS3 Module Level 3 Selectors

Authors

  • David Warring

License

Artistic-2.0

Dependencies

CSS::Grammar:ver<0.3.9+>JSON::Fast

Test Dependencies

Provides

  • CSS::Module::CSS3::Selectors
  • CSS::Module::CSS3::Selectors::Actions

Documentation

The Camelia image is copyright 2009 by Larry Wall. "Raku" is trademark of the Yet Another Society. All rights reserved.