我正在使用jQuery創建一個完全覆蓋現有元素的元素。至少這是意圖。CSS覆蓋現有元素
的背景是類似於在這裏發生的事情:
A List Apart: Making Compact Forms More Accessible
的想法是,你有一個元素,如<input>
,並在一定條件下你顯示另一個元素(在這種情況下<label>
)絕對定位在它的頂部作爲一個提示。儘管一般原則在其他情況下也很有用。
有幾個現有的圖書館做這種事情,但他們似乎都沿着同樣的路線分解。
簡易方法:
- 與
display:block
和position:absolute
創建封面元素。 - 設置你的封面元素的
left
和top
到
問題符合您的覆蓋元素:封面的位置不再匹配時頁面佈局的變化,如隱藏着一個段落或調整顯示器。
稍加改善方法:
- 創建
display:block
和position:absolute
- 的封面元素添加封面元素立即之前在DOM
- 涵蓋元素設置的底部,覆蓋的右邊緣至覆蓋的負高度和寬度
該方法解決了流體佈局的問題,但它增加了一個問題,如果覆蓋的元素位於inline
塊內,則封面在顯示時(由於插入塊元素)會創建換行符。
大概這是一個問題,已經在某個地方被某人解決了。
扔了一個jsfiddle,你會更有可能得到一些幫助,這個,隊友。我知道該怎麼做,但沒有看到你的標記,我不知道這是一個可接受的解決方案。 – 2011-04-21 03:14:00