Method: Less::Node::Element#to_css

Defined in:
lib/less/engine/nodes/element.rb

#to_css(path = []) ⇒ Object

Entry point for the css conversion



148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
# File 'lib/less/engine/nodes/element.rb', line 148

def to_css path = []
  path << @selector.to_css << name unless root?

  content = properties.map do |i|
    ' ' * 2 + i.to_css
  end.compact.reject(&:empty?) * "\n"

  content = content.include?("\n") ?
    "\n#{content}\n" : " #{content.strip} "
  ruleset = !content.strip.empty??
    "#{[path.reject(&:empty?).join.strip,
    *@set.map(&:name)].uniq * ', '} {#{content}}\n" : ""

  css = ruleset + elements.map do |i|
    i.to_css(path)
  end.reject(&:empty?).join
  path.pop; path.pop
  css
end