module Haml::Filters::Css

Surrounds the filtered text with ‘<style>` and CDATA tags. Useful for including inline CSS.

Public Instance Methods

render_with_options(text, options) click to toggle source

@see Base#render_with_options

# File lib/haml/filters.rb, line 233
def render_with_options(text, options)
  indent = options[:cdata] ? '    ' : '  ' # 4 or 2 spaces
  if options[:format] == :html5
    type = ''
  else
    type = " type=#{options[:attr_wrapper]}text/css#{options[:attr_wrapper]}"
  end

  text = text.rstrip
  text.gsub!("\n", "\n#{indent}")

  %(<style#{type}>\n#{"  /*<![CDATA[*/\n" if options[:cdata]}#{indent}#{text}\n#{"  /*]]>*/\n" if options[:cdata]}</style>)
end