Ticket #4350 (closed bug: fixed)

Opened 6 years ago

Last modified 5 years ago

Dialog: No Scrollbars in IE in Quirksmode

Reported by: qwerty Owned by:
Priority: major Milestone: 1.8
Component: ui.dialog Version: 1.7
Keywords: Cc:
Blocking: Blocked by:

Description

Scroll bars do not show up in IE6 when the contents of a Dialog extend beyond the size of a dialog.

Firefox 3.0.7 displays scrollbars more appropriately (resize indicator overlaps with scrollbar)

Attachments

iedialog.html Download (822 bytes) - added by sdavis 6 years ago.
Test html/jquery js to show dialog scrollbar issue in IE 6,7,8

Change History

comment:1 Changed 6 years ago by joern.zaefferer

  • Milestone changed from TBD to 1.7.2

comment:2 Changed 6 years ago by joern.zaefferer

  • Milestone changed from 1.7.2 to 1.8

Changed 6 years ago by sdavis

Test html/jquery js to show dialog scrollbar issue in IE 6,7,8

comment:3 Changed 6 years ago by sdavis

This affects IE 7 and 8 as well. I have attached a very simple test html file that demonstrates the issue. I am going to try and fix this as I need it to work for a client project. I will submit a patch back to dev mailing list if I get it to work.

comment:4 Changed 6 years ago by sdavis

I have looked into this and this is related to how IE compute offsetHeight in quirks mode. When the dialog _size() method is called the nonContentHeight is computed using the jQuery.css method which for some reason does a jQuery.swap with a set of properties on the dialog element. One of the properties is display:"block". When that gets set on the element and the IE browser is not in strict mode then the elem.offsetHeight returns a very large value (in my case 478 instead of ~70 for strict mode). This link may help  http://msdn.microsoft.com/en-us/library/ms534199(VS.85).aspx.

I don't have enough knowledge of css and the jQuery design architecture to understand the ramifications of possible changes so I am not going to try and fix this for quirks mode. I will just set my DOCTYPE to strict for a work around but I wanted to throw this out in case it helps one of the core developers get a jump on this issue.

comment:5 Changed 5 years ago by scott.gonzalez

  • Summary changed from No Scrollbars in IE6 to No Scrollbars in IE in Quirksmode

comment:6 Changed 5 years ago by dluk

For those, who cannot wait till this bug will be fixed (like me). Try to add this hack to the end of the _size() function: if ($.browser.msie && $.browser.version < 7) {

this.element.css("width", this.uiDialog.width() - 28);

} It's working for me in IE6 (I don't use quirks mode in IE7-8). Unfortunately I don't know jQuery internals well enough to provide proper fix for this issue.

comment:7 Changed 5 years ago by btburnett3

Problem is that the attempt to measure non-content height doesn't work in IE quirks mode because setting the content height to 0 is ignored. Fixed in r3838 by hiding content instead.

comment:8 Changed 5 years ago by scott.gonzalez

  • Status changed from new to closed
  • Resolution set to fixed

comment:9 Changed 5 years ago by rdworth

  • Summary changed from No Scrollbars in IE in Quirksmode to Dialog: No Scrollbars in IE in Quirksmode
Note: See TracTickets for help on using tickets.