Closed
Bug 461292
Opened 16 years ago
Closed 16 years ago
Visual flicker when an overflow:auto box is moved into or out of the visible region of an overflow:hidden box
Categories
(Core :: Layout, defect)
Core
Layout
Tracking
()
RESOLVED
DUPLICATE
of bug 421866
People
(Reporter: zwol, Unassigned)
Details
Attachments
(1 file)
3.35 KB,
text/html
|
Details |
The attached test case has a gray box with two cyan sidebars. Each of the sidebars can be hidden, and shown again once hidden, by clicking the orange bar next to it. (Javascript is required, natch.) When you do this to the right-hand sidebar, all is well, but when you do this to the left-hand sidebar you will see flickering in the black-on-white text immediately to its left, outside the gray box. This is known to happen on both Windows and Linux (we're not sure about Mac) and consistently from Firefox 2.0 all the way up to latest trunk.
The structure of the test case is like so: The gray box is set to overflow:hidden. The sidebars are absolutely positioned inside the gray box. The script slides the sidebars horizontally, into or out of the gray box's visible area, thus revealing or concealing them. That's fine when the sidebar itself (the cyan box) is set to overflow:hidden, but if it's set to overflow:auto instead (or overflow:scroll), you get flicker.
My semi-educated guess at the cause is, overflow:auto/scroll requires a widget, and moving such a frame requires us to move the OS-level window associated with the widget; there is a perceptible delay between when that happens and when the content outside the overflow:hidden container is repainted on top of the window. Unfortunately that means it's going to be really hard to fix, short of getting rid of widgets...
(This is a much-reduced test case from a real web site which is, unfortunately, in closed alpha test at the moment; I am proxying the bug on behalf of their team.)
You need to log in
before you can comment on or make changes to this bug.
Description
•