的IE和WebKit瀏覽器似乎同意「的位置是:絕對」當應用到「顯示:直列塊」(或者,在IE7的情況下,用「hasLayout的」設置簡單的「內聯」元件)應導致塊定位在內。也就是說,具有:將「display:inline-block」與「position:absolute」結合:會發生什麼?
Hello there <label style='position: absolute; display: inline-block'>sir</label>
這些瀏覽器將會顯示:
Hello theresir
或
Hello there sir
不過,Firefox(3及以上,我認爲)會給這樣的:
Hello there
sir
也就是說,他們讓「inline-block」e lement開始一條新線。現在,顯然不是沒有與「position:absolute」結合在一起,也不是「position:absolute」沒有「display:inline-block」的情況。這是一個錯誤,還是隻是一個不好的(模棱兩可的)規範?
Here是一個非常簡單的jsfiddle。
(編輯 —也許這是什麼Firefox沒有用「的立場:絕對的」,並沒有「顯示」設置...)
'position:absolute' should force'display:block'。請參閱第2號[此處](http://www.w3.org/TR/CSS21/visuren.html#dis-pos-flo)。我不知道這裏發生了什麼...... – thirtydot
嗯...這表明Firefox是正確的,其他人都是錯的...... – Pointy
Opera的行爲與Firefox相同,所以我傾向於同意你的看法。 WebKit錯誤和IE錯誤? – thirtydot