def convert_html_element(el, indent)
res = inner(el, indent)
if el.options[:category] == :span
"<#{el.value}#{html_attributes(el.attr)}" << (!res.empty? || HTML_TAGS_WITH_BODY.include?(el.value) ? ">#{res}</#{el.value}>" : " />")
else
output = ''
output << ' '*indent if @stack.last.type != :html_element || @stack.last.options[:content_model] != :raw
output << "<#{el.value}#{html_attributes(el.attr)}"
if !res.empty? && el.options[:content_model] != :block
output << ">#{res}</#{el.value}>"
elsif !res.empty?
output << ">\n#{res.chomp}\n" << ' '*indent << "</#{el.value}>"
elsif HTML_TAGS_WITH_BODY.include?(el.value)
output << "></#{el.value}>"
else
output << " />"
end
output << "\n" if @stack.last.type != :html_element || @stack.last.options[:content_model] != :raw
output
end
end