Project

autostyle

0.0
No commit activity in last 3 years
No release in over 3 years
Make it easier to merge CSS styles together for a HTML element
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.12
~> 5.0
~> 10.0

Runtime

 Project Readme

Autostyle

This is a simple gem to make it easier to handle styles for HTML elements.

It treats the styles as a hash, allowing styles to be merged easily.

It responds to to_s, producing CSS output

Installation

Add this line to your application's Gemfile:

gem 'autostyle'

And then execute:

$ bundle

Or install it yourself as:

$ gem install autostyle

Usage

style = Autostyle[background: { color: :red }]

# Both of these are equal
style.merge!(background: { color: :blue })
style[:background].merge!(color: :blue)

# Don't need to worry about nil errors
style[:text][:size] = '14px'

puts "style=\"#{style}\"" # implicitly converted to a string when needed
# style="background-color: blue; text-size: 14px"

# Merging a value for a style with "children" works as so:
style.merge!(background: 'no-repeat')
puts style.to_s # background-color: blue; background: no-repeat; text-size: 14px

# Or you can overwrite it:
style[:background] = '#ffffff'
puts style.to_s # text-size: 14px; background: #ffffff

# And with a hash:
style[:background] = { color: :red }
puts style.to_s # text-size: 14px; background-color: red

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/automeow/autostyle.

License

The gem is available as open source under the terms of the MIT License.