Don't let the error icon get clipped when the text is short.

On Chrome (and possibly others), an inline element like span doesn't enlarge
its size to cover its content, so the 1px place holder wasn't taking effect.

To ensure the minimum height of 16px, make it an inline-block element. I'm
not entirely sure how an inline-block element with no fixed width would behave,
but with a bit of casual testing, the text inside seems to wrap OK.
avoid global names
refactored to eliminate duplication.

Using prototype.js to simplify the code
Added 'sorttop' class to make rows stick to the top.

Plus more simplifications
make this row always stick to the top
Avoid using now deprecated names
This aligns the middle of the text and the icon.

For multiple line warning messages, this makes them little bit spaced, but I think it's OK.