Module: Mint::CSS
- Defined in:
- lib/mint/css.rb
Class Method Summary collapse
- .container ⇒ Object
-
.mappings ⇒ Object
Maps a “DSL” onto actual CSS.
- .parse(style) ⇒ Object
- .stylify(key, value) ⇒ Object
Class Method Details
.container ⇒ Object
5 6 7 |
# File 'lib/mint/css.rb', line 5 def self.container "container" end |
.mappings ⇒ Object
Maps a “DSL” onto actual CSS. Translates this …
Font: Helvetica Margin: 1in Orientation: Landscape
… into something like:
#container {
font-family: Helvetica;
padding-left: 1in;
@page { size: landscape };
}
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/mint/css.rb', line 23 def self.mappings { font: "font-family", font_size: "font-size", font_color: "color", color: "color", top_margin: "padding-top", top: "padding-top", bottom_margin: "padding-bottom", bottom: "padding-bottom", left_margin: "padding-left", left: "padding-left", right_margin: "padding-right", right: "padding-right", height: "height", width: "width", columns: "column-count", column_gap: "column-gap", orientation: "@page { size: %s }", indentation: "p+p { text-indent: %s }", indent: "p+p { text-indent: %s }", bullet: "li { list-style-type: %s }", bullet_image: "li { list-style-image: url(%s) }", after_paragraph: "margin-bottom", before_paragraph: "margin-top" } end |
.parse(style) ⇒ Object
63 64 65 66 67 68 |
# File 'lib/mint/css.rb', line 63 def self.parse(style) css = style.map {|k,v| stylify(k, v) }.join("\n ") container_scope = "##{container}\n #{css.strip}\n" engine = Sass::Engine.new(container_scope) engine.silence_sass_warnings { engine.render } end |