Closed Bug 872254 Opened 8 years ago Closed 8 years ago

Relative positioned element disappears when original position is vertically scrolled off the viewport

Categories

(Core :: Layout: Positioned, defect)

16 Branch
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla24

People

(Reporter: bz_zolc, Assigned: roc)

References

Details

(Keywords: regression, testcase)

Attachments

(2 files)

User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:18.0) Gecko/20130119 Firefox/18.0
Build ID: 20130119203203

Steps to reproduce:

On this page: http://larvoltrials.com/ohm.html
There are headers inside DIVs with position:relative that have their top property changed via javascript to follow the viewport on one axis only.


Actual results:

In Firefox 21 (and still in Nightly 24.0a1), while scrolling vertically, these headers follow the viewport as expected, until the viewport is scrolled enough so that the original (pre-positioning) area is completely outside the viewport, then they disappear.
The Inspector tool still shows their boundaries as following the viewport, they just aren't visible.


Expected results:

The DIVs should continue to be visible regardless of vertical scroll position. (Worked in Firefox 18 and chrome/IE9)
Hardware: x86 → x86_64
The similar problem happens in Firefox4...17.
So it is difficult to determine regression window.

Fixed window(m-aurora)
Bad:
http://hg.mozilla.org/releases/mozilla-aurora/rev/fa9a4d400949
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20121010042011
Fixed:
http://hg.mozilla.org/releases/mozilla-aurora/rev/e3f7fdf150a4
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20121011042010
Fized pushlog:
http://hg.mozilla.org/releases/mozilla-aurora/pushloghtml?fromchange=fa9a4d400949&tochange=e3f7fdf150a4

Fixed by
cf470cfd18ca	Ehsan Akhgari — Backout bug 157681 in order to fix bug 775350 on Aurora; a=lsblakk


Unfortunately, The patch of bug 775350 does not fix this problem in Firfox19 and later.
Correct
>>The similar problem happens in Firefox4...17.
The similar problem happens in Firefox4...17 (when they were still in m-c).
Component: Layout: View Rendering → Layout: R & A Pos
OS: Windows 7 → All
Hardware: x86_64 → All
I get a different regression range:

Last good nightly: 2012-06-06
First bad nightly: 2012-06-07

Pushlog:
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=6338a8988917&tochange=7e4c2abb9fc9

It appears to be caused by the number of rows in the table. If there are <= 20 rows, it works. If there are more than 20 rows, the bug happens.
Attached file testcase
The red div shouldn't disappear when the page is scrolled.

If you remove one of the empty rows, it works.
Attachment #749787 - Attachment mime type: text/plain → text/html
(In reply to mjh563 from comment #3)
> I get a different regression range:
> 
> Last good nightly: 2012-06-06
> First bad nightly: 2012-06-07
> 
> Pushlog:
> http://hg.mozilla.org/mozilla-central/
> pushloghtml?fromchange=6338a8988917&tochange=7e4c2abb9fc9
> 
> It appears to be caused by the number of rows in the table. If there are <=
> 20 rows, it works. If there are more than 20 rows, the bug happens.

Confirmed, it has regressed since FF16.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Version: 21 Branch → 16 Branch
The comment 3 range would be bug 157681.  The comment 1 range was for the problem being _fixed_ between 17 and 18, which was done by backing out bug 157681.
Blocks: 157681
Assignee: nobody → roc
It looks to me like we're failing to update an overflow area somewhere, probably table-related since this seems to depend on tables.
Ah, this bug is because the table row cursor isn't being invalidated when UpdateOverflow happens.
Attached patch fixSplinter Review
Interesting that no equivalent bug was reported for blocks.
Attachment #750279 - Flags: review?(bzbarsky)
Comment on attachment 750279 [details] [diff] [review]
fix

>+  virtual bool UpdateOverflow();

MOZ_OVERRIDE, please.

r=me
Attachment #750279 - Flags: review?(bzbarsky) → review+
https://hg.mozilla.org/mozilla-central/rev/441d2b9cecb4
Status: NEW → RESOLVED
Closed: 8 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla24
You need to log in before you can comment on or make changes to this bug.