CSSTree

Ultra-simple CSS parser.

Parsing CSS

tree = CSSTree.parse("body { background-color: #FFFFFF; color: #000000; }")
# => #<CSSTree:0x123456>

Finding Rules For A Selector

tree.find("body")
# => #<OpenStruct background_color="#FFFFFF" color="#000000">

Access Properties

tree.find("body").color
# => "#000000"

Access Dashed Property Names Using Underscores

tree.find("body").background_color
# => "#FFFFFF"

Manipulating the Tree

tree.find("body").color = "#A3A3A3"
# => "#A3A3A3"

Rendering Normal CSS

tree.render
# => "body { background-color: #FFFFFF; color: #A3A3A3; }