[英]Scrollbar doesn't scroll div content in IE7 (IE8 Compatibility)
我在IE7(我的意思是IE8兼容模式)中遇到了一個奇怪的問題,其中div
中的滾動條出現在其內容的后面。 它在jQueryUI模態對話框中,它占據了屏幕的大部分,並且其中包含很多內容。 div包含一個ASP:Repeater
,它以網格樣式的布局呈現自定義的行。
div的完整標記是這樣的:
<div style='max-height:250px; overflow-y:scroll;
border:1px solid #AAAAAA; border-top-width:0; margin-left:auto;
margin-right:auto;'>
<asp:Repeater ID="myRepeater" runat="server">
<ItemTemplate>
<asp:Panel ID="pnlItem" runat="server" style='padding-top:5px;
padding-bottom:5px; position:relative;'>
.....
</asp:Panel>
</ItemTemplate>
</asp:Repeater>
</div>
這是問題的屏幕截圖。 覆蓋垂直滾動條的灰色是通過pnlItem
上的類設置的交替背景色。 下面的文本(“ HS Gym”)是轉發器底部pnlItem
一部分。 另外,當我移動其中一個滾動條時,內容不會移動,直到我移動模式對話框。
我不知道該怎么辦。 似乎是一個真正隨機的渲染錯誤,將具有同樣隨機的解決方案。 Google並沒有任何幫助。 這里發生了什么?
編輯10/7/2011:我通過在div上設置顯式寬度解決了重疊滾動條的問題。 現在,垂直滾動條在IE7中可以正確顯示,但是當我使用它滾動時,內容的滾動位置不會更新,直到我抓住其標題欄的模式並將其在瀏覽器屏幕內移動。 我已經更新了這個問題的標題以反映這一點。
原來,問題出在每個Repeater項根目錄上的pnlItem
控件上的position:relative
。 在IE7中,這會導致滾動條不起作用。 我已經設置好了,這樣我就可以在每個pnlItem
獲得一些布局上的東西來工作,但是最終我做了不同的事情,因此能夠刪除該樣式屬性並使它工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.