Ticket #4350 (closed bug: fixed)
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
Change History
Changed 4 years ago by sdavis
-
attachment
iedialog.html
added
Test html/jquery js to show dialog scrollbar issue in IE 6,7,8
comment:3 Changed 4 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 4 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 4 years ago by scott.gonzalez
- Summary changed from No Scrollbars in IE6 to No Scrollbars in IE in Quirksmode
comment:6 Changed 4 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 3 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.

