Closed Bug 349695 Opened 18 years ago Closed 18 years ago

login field does not appear (content of iframe is below visible area)

Categories

(Core :: Layout: Tables, defect, P1)

defect

Tracking

()

VERIFIED FIXED
mozilla1.9alpha1

People

(Reporter: ryan.bartlett, Assigned: bzbarsky)

References

()

Details

(4 keywords)

Attachments

(3 files)

User-Agent:       Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1b2) Gecko/20060817 Camino/1.0+
Build Identifier: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1b2) Gecko/20060817 Camino/1.0+

On the AmSouth homepage, the login field for your account does not appear, the area remains blank.  Works fine on explorer and Safari.

Reproducible: Always

Steps to Reproduce:
1.Go to amsouth.com
2.
3.
I see this.  Work in Bon Echo, also broken in CocoaFox.
This is bizarre.

Here's the deal, in layman's terms: the iframe that contains the login field is quite tall in Camino for some reason (with the content all the way at the bottom); in other browsers, the iframe is the size of the content.  So when the iframe loads into the appropriately-sized table cell, we see the "top" of the iframe, which is some blank space (thus we really see the bgcolor of the table containing the iframe).

josh/mento/pink/smfr/wevah: any idea why we're getting this extra blank space above the content in the iframe <https://ibank.amsouth.com/tether/ibanklogon.asp> in (apparently) Cocoa widgets?

Ryan, you can access the form until this bug is fixed by clicking on where it should be and using the down-arrow key to bring it into view....
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: camino1.1?
Summary: login field does not appear → login field does not appear (content of iframe is below visible area)
The page looks fine to me (Version 2006042704 (1.0.1))
I see the same problem with A BonEcho build dated 20060817.
This is actually a (recent) regression.
The form tag is incorrectly nested: <table><form><table>......

I'll attached the sightly modified source code to show the issue.

Hmm I think Boris Z recently worked on some code about this.
Attached file test case
The parent table is shown with a thick red border. Look how the child table is dropped below the parent table.
Ah, thanks for that tip, philippe!  I saw this in my proto-1.0.3 build and 1.0+ so I assumed this was Cocoa, but like Simon on 1.0.1, I don't see this when I check 1.0.2.
Keywords: regression, testcase
Works correctly on Bon Echo
Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1b1) Gecko/20060817 BonEcho/2.0b1 
Fails
Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1b2) Gecko/20060818 BonEcho/2.0b2

My suspicion is on bug 348455, adding Boris to the cc
Yes, this is a regression from bug 348455 (or rather from bug 285727).  The problem is that we left the "quirk" (which we also do in standards mode) only for cases when the page doesn't explicitly style the form's display.... and this page does:

  form { display: inline; }

So either we accept this regression in this very rare case or we need to change the patch for bug 285727.  See bug 285727 comment 21.

Perhaps what we should really do here is use a post-resolve callback....  This seems like the sort of icky case where it could be appropriate.  David, would you be OK with that?
Blocks: 285727
Component: Page Layout → Layout: Tables
Flags: camino1.1?
Flags: blocking1.9?
Flags: blocking1.8.1?
Flags: blocking1.8.0.7?
OS: Mac OS X 10.4 → All
Product: Camino → Core
QA Contact: page.layout → layout.tables
Hardware: Macintosh → All
Version: unspecified → Trunk
Whiteboard: need input dbaron, need patch
Flags: blocking1.8.1? → blocking1.8.1+
Flags: blocking1.8.0.7? → blocking1.8.0.7+
Why can't we just back that out and use a rule in the UA stylesheet like:

table > form, tbody > form, thead > form, tfoot > form, tr > form {
  display: none ! important;
}

?
*** Bug 349922 has been marked as a duplicate of this bug. ***
Because  that will affect XHTML as well, which seems undesirable (given the !important).
Sounded like dbaron maybe had ideas on how to fix this, maybe this should go to bz instead, but either way an unowned blocking regression is not good.
Assignee: nobody → dbaron
I suppose a post-resolve callback is acceptable.  We should really have a way of distinguishing HTML and XHTML, though...
We could just create a :-moz-is-html pseudo-class or something.
The other option is to have a stylesheet that only applies to HTML documents (much like quirks.css only applies to quirks documents).  That might be a better approach...
Is this likely to get reviews+baking enough to make 1.8.0.7? Not looking good if this weekend is the code freeze.
Comment on attachment 235321 [details] [diff] [review]
One possible approach

r+sr=dbaron.  (I'm assuming the nsHTMLStyleSheet changes are a cvs-generated backout; I didn't look at them very closely.)

This should be pretty low risk.
Attachment #235321 - Flags: superreview+
Attachment #235321 - Flags: review+
Fixed on trunk.
Assignee: dbaron → bzbarsky
Comment on attachment 235321 [details] [diff] [review]
One possible approach

I think this should be pretty safe for branch.
Attachment #235321 - Flags: approval1.8.1?
Attachment #235321 - Flags: approval1.8.0.7?
Status: NEW → RESOLVED
Closed: 18 years ago
Priority: -- → P1
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9alpha
Comment on attachment 235321 [details] [diff] [review]
One possible approach

Thanks for responding re:risk
approved for the 1.8.0 branch, a=dveditz for drivers
Attachment #235321 - Flags: approval1.8.0.7? → approval1.8.0.7+
Summary: login field does not appear (content of iframe is below visible area) → [baking until 8/27]login field does not appear (content of iframe is below visible area)
Fixed on 1.8.0 branch.
Keywords: fixed1.8.0.7
Whiteboard: need input dbaron, need patch
Comment on attachment 235321 [details] [diff] [review]
One possible approach

a=schrep approving all previously triaged patches which were baking on trunk.
Attachment #235321 - Flags: approval1.8.1? → approval1.8.1+
Fixed on 1.8 branch.
Keywords: fixed1.8.1
Summary: [baking until 8/27]login field does not appear (content of iframe is below visible area) → login field does not appear (content of iframe is below visible area)
Verfied fixed for 1.8.0.7 with Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.8.0.7) Gecko/20060906 Firefox/1.5.0.7 and verified fixed for 1.8.1 with Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.8.1b2) Gecko/20060821 Firefox/2.0b2
Status: RESOLVED → VERIFIED
Checked in a testcase for this.
Flags: blocking1.9? → in-testsuite+
Is the !important needed?
Yes, if you want to fix this bug, because if it's not !important then the page's use of "form { display: inline }" (which is what the site was doing; see comment 8) will override the UA style.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: