Tag Archives: stylesheets

Allow HTML String – Ruby on Rails

Just a quick post on how to prevent escaping for HTML within a string. Simply use html_safe?.

i.e. The following will show the bold tags as text:

<%= "<b>GOOOOOOOGLE</b>">

<b>GOOOOOOOGLE</b>

Whereas once we add html_safe the text will be displayed in bold:

<%= ("<b>GOOOOOOOGLE</b>").html_safe?>

GOOOOOOOGLE

Placing Multiple Button_To on the Same Line – Ruby on Rails

This is a problem that had me confused for an embarrassingly long time. Rails wraps button_to elements within a form and a div. Unfortunately this will take up 100% of the available width. Thankfully the solution is pretty straight forward – simply wrap buttons in a div and float them left like so:

  1.     <div style="float:left;">
  2.       <%= f.submit 'Place Order', :class => 'button'%>
  3.     </div>
  4.     <div style="float:left;">
  5.       <%= button_to 'Cancel', :root, :class => 'button' %>
  6.     </div>

A wrapper div isn’t strictly necessary however I usually add one just to be safe. While this will probably give a bunch of designers another reason to hate developers, I find that wrapping floated elements seems to save a lot of headaches when making changes down the track.

Using the code above you may also find that the divs aren’t filling as expected, simply add a div with a ‘clear:both’ style to the bottom of the wrapper:

  1. <div>
  2.     <div style="float:left;">
  3.       <%= f.submit 'Place Order', :class => 'button'%>
  4.     </div>
  5.     <div style="float:left;">
  6.       <%= button_to 'Cancel', :root, :class => 'button' %>
  7.     </div>
  8.     <div style="clear:both;">
  9.     </div>
  10. </div>

Hopefully that doesn’t take anywhere near as long for you guys to figure out as it did me, time for a coffee break I think. Good luck!