2010-06-01 39 views
0

我也正是如此內容安排:位置替代:相對;用於溢出:auto;臭蟲在IE7

<div id="thumbnails" style="width: 40px; overflow: auto;"> 
    <div style="float:left; width: 20px;">content</div> 
    <div style="float:left; width: 20px;">content</div> 
    <div style="float:left; width: 20px;">content</div> 
    <div style="float:left; width: 20px;">content</div> 
    <div style="float:left; width: 20px;">content</div> 
    <div style="float:left; width: 20px;">content</div> 

在IE7這顯示了跑出來的滾動框的內容。各地的答案都是讓#thumbnails的位置:相對。我的問題是#thumbnail中的項目是可拖動的,可以通過絕對定位的元素的幻象拖出縮略圖。如果父母被定位,這種情況不會很好:相對而言,因爲現在絕對位置是相對於#thumbnails而不是<body>。有誰知道IE7錯誤的替代解決方案?

+0

也許如果你給一個完整的例子,清楚地顯示問題? (你的例子在IE7中對我看起來很好) – riwalk 2010-06-01 20:44:08

+0

我假設熟悉這個bug,代碼僅僅是爲了參考我的問題。這個bug的一個例子是在這裏http://www.rowanw.com/bugs/overflow_relative.htm – Myles 2010-06-01 22:08:36

回答

0

你有沒有聽說過這個惱人的IE「hasLayout」屬性? http://msdn.microsoft.com/en-us/library/bb250481(VS.85).aspx(引用一些MSDN傷害,我現在覺得髒......)。無論如何,嘗試將「zoom:1」應用於您的容器:它可能會改善情況。唯一的問題:縮放屬性只有IE瀏覽器,並會在另一個瀏覽器下的css日誌中創建警告。

+0

是的,我確實發現了這一點。這不是一個hasLayout問題。我最終創建了一個新事件,在初始化一個可拖動對象之前觸發。我處理該事件,相對放置「縮略圖」並設置可見性:隱藏到所有「縮略圖」子女。然後onDragEnd,將所有內容都設置爲可見和相對。 (還是)感謝你的建議。 – Myles 2010-07-05 19:00:09