iris-cssom 0.1.1

Iris CSS Object Model (CSSOM) implementation: CSS parsing, style computation, CSS Modules, and Web API
Documentation

Iris CSS Object Model (CSSOM) Implementation

This crate provides a complete CSSOM implementation including:

  • CSS parsing and selector matching
  • CSS Modules support
  • Web-compatible CSSOM APIs (CSSStyleSheet, CSSRule, CSSStyleDeclaration, etc.)
  • Bridge layer for iris-layout integration

Architecture

CSS Text → css.rs (Parser) → CSSRule → cssrule.rs (CSSOM Wrapper)
                                     ↓
                             stylesheet.rs (CSSStyleSheet)
                                     ↓
                             bridge.rs (Integration with iris-layout)

Example

use iris_cssom::{CSSStyleSheet, CSSOMManager, CSSStyleDeclaration};

// Create a stylesheet
let mut sheet = CSSStyleSheet::new();
sheet.insert_rule(".container { color: red; }", 0).unwrap();

// Use CSSOMManager for multiple stylesheets
let mut manager = CSSOMManager::new();
manager.add_stylesheet_from_css("main", ".class { padding: 20px; }");

// Use CSSStyleDeclaration for inline styles
let mut style = CSSStyleDeclaration::new();
style.set_property("font-size", "16px", "");