The IE and WebKit browsers seem to agree that "position: absolute" when applied to "display: inline-block" (or, in the case of IE7, simple "inline" elements with "hasLayout" set) should result in blocks positioned inline. That is, with:
Hello there <label style='position: absolute; display: inline-block'>sir</label>
those browsers will show:
Hello theresir
or
Hello there sir
However, Firefox (3 and up, I think) will give this:
Hello there
sir
That is, they make the "inline-block" element start on a new line. Now, that's clearly not what "inline-block" does without being combined with "position: absolute", nor is it what "position: absolute" does without "display: inline-block". Is this a bug, or just a bad (ambiguous) spec?
Here is a very simple jsfiddle.
(edit — maybe that is what Firefox does with "position: absolute" and no "display" setting ...)