Closed Bug 395333 Opened 18 years ago Closed 17 years ago

[reflow branch] Password and Login box is displaced on accesd.desjardins.com

Categories

(Tech Evangelism Graveyard :: French, defect)

defect
Not set
minor

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: chadwickgab+mozilla, Unassigned)

References

()

Details

(Keywords: regression, testcase, Whiteboard: [dbaron-1.9:RwCr])

Attachments

(8 files)

On the desjardins.com (Bank) website the password and login text and box are displaced since recent nightly builds. See screenshots. Tested with Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; rv:1.9a8pre) Gecko/2007090604 Minefield/3.0a8pre.
Flags: blocking1.9?
Attached image Correct rendering
Can you find a regression range?
It regressed before Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9a8pre) Gecko/2007081505 Minefield/3.0a8pre. Sorry I don't know where to find earlier builds.
You can find older builds at http://archive.mozilla.org/pub/firefox/nightly/ (takes a little while to load).
The regression range is between the 20061207 and 20061208 builds. The 20061208 build is regressed. I tested monthly after that not one builds that I tested did it correctly. There where allot of checkins during that period and I have almost no knowledge of code so I can't help for this.
That matches the landing period of bug 300030, which was a major reworking of the layout code. It's likely that this bug is a duplicate of one of the other bugs in bug 300030's dependency list.
Summary: Password and Login box is displaced on accesd.desjardins.com → [reflow branch] Password and Login box is displaced on accesd.desjardins.com
Looks like it may have something to do with an unsatisfied percentage width on a column-spanning cell, although it's hard to tell without fiddling with a testcase in older builds / other browsers.
Component: Layout → Layout: Tables
QA Contact: layout → layout.tables
Attached file testcase 1 (minimized)
Here's a minimized testcase. I don't think percentages come into play -- it's just how we balance column-spanning cells. The underlying issue seems to be two rows like this, whose colspans both sum to 5, which we handle differently in trunk vs. branch: [colspan = 1][colspan=2][colspan=2] [ colspan = 2 ][ colspan = 3 ] The first row of that schematic represents the "Numero de carte" row on the original page. (Or it can represent the password row -- it doesn't matter, we only need one of those to reproduce the problem). The second row represents the row with the lock and cell phone pictures at the bottom of the box on the original page. In this minimized testcase, the orange box corresponds to the "Numero de Carte" text and textfield. The blue div (with specified width) represents the lock image, which also has specified width. Notice that the orange box starts further to the left on branch than it does on trunk. (Screenshots coming.)That's the bug.
Flags: blocking1.9? → blocking1.9+
Keywords: testcase
Whiteboard: [dbaron-1.9:RwCr]
Daniel, what does IE's rendering of your testcase look like?
Screenshot of IE7 rendering looks almost the same as branch.
So do we basically count the pref width of a colspan only against the first column it spans? That's basically what things look like to me. If I remove all the test in the testcase and just have some divs with widths to give the preferred widths in px as follows (and a total table width of 200px): [colspan = 1, pref=10][colspan=2, pref=10][colspan=2, pref=10] [ colspan = 2, pref=100 ][ colspan = 3 ] Then it looks like we calculate our total pref width as 120px, have 80 px to distribute, give 80*100/120 of it to column 1 and the divide the rest evenly between what looks like columns 3 and 5? Or something like that; for sure the width of the colspan=3 ends up 24px, which means that it gets all the extra width that goes with those 20px pref width. Interestingly, removing the 10px pref width on the colspan=1 does change the width we give to column 1. Not quite sure why.
(In reply to comment #14) > So do we basically count the pref width of a colspan only against the first > column it spans? That's basically what things look like to me. No, we distributed it among the spanned columns in proportion to the intrinsic widths in those columns from cells spanning fewer columns.
Oh, the colspan sorter. Right. So in this case, we don't take the pref width from the colspan=2 cells in the first row when doing the colspan=2 cell in the second row (because they all have the same colspan). And doing that would of course introduce row-order dependence into the algorithm. The effect is that in fact we assign all the extra width from the colspan=2 cell in the second row to the first column...
Does that match what WinIE does if you reverse the row order?
(In reply to comment #17) > Does that match what WinIE does if you reverse the row order? Interesting... With the original row-order, IE7 matches branch. With reversed row-order, IE7 matches trunk. Here's a testcase that includes both row-orders. Trunk and Branch handle both row-orders the same, and I'll post a screenshot of IE7's rendering.
Screenshot of IE7's rendering of just-posted testcase. Notice that the rendering changes to match trunk when the row order switches.
Keywords: qawanted
RE comment 15 & comment 18, it looks like what trunk does here is reasonable, though it doesn't match Branch. dbaron (and others): Do we still want to match branch behavior here, or should we leave this as-is?
Should it match branch ? Since the two are behaviours are OK the best thing should be to match branch to break the least websites possible. Since gecko 1.9 as not been released shouldn't mozilla do it's best to not break previous behaviour when the website as correct html ?
Gabriel, matching branch would mean not matching IE or site expectations in a number of cases.... We used to have a whole bunch of bugs about colspanning cells not getting the right widths, and we fixed a lot of them since 1.8. The only remaining issue is that IE's widths depend on row order, which seems a little unfortunate, so the algorithm David implemented is row-order-independent (as are those of Opera and Safari, as I recall; note that Safari's rendering is the same as the Gecko trunk rendering here). It's not really possible to get the rendering "right" (defined as matching IE) while keeping row-order-independence, as the last testcase shows.
Thank you for the explanation. Really appreciated. So if this is WONTFIX like I think it will be, just transfer it to tech evangelism...
Someone please file a followup bug as necessary.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → WONTFIX
Will contact Desjardins.
Status: RESOLVED → REOPENED
Component: Layout: Tables → French
Flags: blocking1.9+
Product: Core → Tech Evangelism
Resolution: WONTFIX → ---
Version: Trunk → unspecified
Priority: P2 → --
First contact with Desjardins they are working on the issue.
Fixed by Desjardins with there new style.
Status: REOPENED → RESOLVED
Closed: 17 years ago17 years ago
Resolution: --- → FIXED
Resolution: FIXED → WORKSFORME
Product: Tech Evangelism → Tech Evangelism Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: