cssparser (rust-cssparser)

CSS Syntax Level 3のRust実装。Servoプロジェクト由来のクレートで、servo/rust-cssparserリポジトリで開発されている。 #rust #browser-engine

特徴

  • 個別のCSSプロパティのパースは行わず、トークナイズやコンポーネント値のパースといった低レベルな処理を提供する設計。CSSカラーや:nth-child()等の引数(An+B記法)を解析するヘルパー関数は含む。
  • どのCSSプロパティ群をサポートするかは上位のライブラリに委ねられている。Servoのstyleクレートは、cssparserを土台にプロパティ対応を追加した完全なCSSパースシステムの実装例になっている。

Stylo/Quantum CSSとの関係

Servoのスタイルシステムである「Stylo」(Quantum CSS)は、CSS解析にcssparserを利用している。StyloはQuantumプロジェクトを通じてFirefoxにも統合されており、cssparserはServoとFirefox両方のCSSエンジンを支える基盤コンポーネントになっている。

利用例

sghtmltopdfはCSS解析コンポーネントとしてcssparserを採用している。

出典

作成日時: 2026-08-14 19:51 / 更新日時: 2026-08-14 19:51