Closed Bug 847850 Opened 11 years ago Closed 11 years ago

Input Placeholder Text Shows Through Layers


(Core :: Layout: Form Controls, defect)

19 Branch
Windows XP
Not set



Tracking Status
firefox19 --- affected
firefox20 - verified
firefox21 - verified
firefox22 - verified


(Reporter: james, Assigned: tnikkel)




(Keywords: regression)


(3 files)

User Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.152 Safari/537.22

Steps to reproduce:

Inputs with placeholder text e.g. <input placeholder="Title" type="text">

Actual results:

The placeholder text shows through layers e.g. a hover drop down menu - see: ( and mouse over the SEARCH box top left)

Expected results:

In all other browsers that I have tested, the placeholder text does not show through covering layers when it is covered.
Assignee: nobody → mounir
Component: General → Layout: Form Controls
Attached file testcase
Regression range is

Last good nightly: 2012-11-09
First bad nightly: 2012-11-10

Attachment #721621 - Attachment mime type: text/plain → text/html
Thank you!  So that's presumably a regression from bug 737786.

In particular, giving the placeholder opacity may be giving it a stacking context...

We probably need to make sure that the placeholder's display item ends up stacking inside the input's display item somehow.
Blocks: 737786
Ever confirmed: true
Flags: needinfo?(tnikkel)
Keywords: regression
Please nominate a fix for this regression for uplift if it's low risk enough but we don't need to track this as it doesn't seem to be a very popular use case or a serious UI breakage but more a mild annoyance (correct me if I'm wrong here).
Well, it makes it impossible to select some menu options on this site, at least for me...
Attached file testcase without input
Yeah, the opacity forms a new stacking context which gets put in our PositionedDescendants list (which is a bad name), so it escapes the text control and then gets sorted with the rest of the content on the page.

If text controls weren't special than this testcase would be equivalent. But they are special.
Assignee: mounir → tnikkel
Flags: needinfo?(tnikkel)
Attached patch patchSplinter Review
Attachment #721923 - Flags: review?(roc)
This needs a reftest of course.
Yep, already in my queue.
Closed: 11 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla22
Comment on attachment 721923 [details] [diff] [review]

[Approval Request Comment]
Bug caused by (feature/regressing bug #):bug 737786
User impact if declined: placeholder text in input textbox will appear over top other page content incorrectly, according to comment 5 this makes it impossible to use the menu options on
Testing completed (on m-c, etc.): on m-c for about 4 days now
Risk to taking this patch (and alternatives if risky): fairly low risk, the frame tree under text controls is fully under our control, and the kinds of things that are in it are limited, so the resulting display list should be pretty simple
String or UUID changes made by this patch: none
Attachment #721923 - Flags: approval-mozilla-beta?
Attachment #721923 - Flags: approval-mozilla-aurora?
Comment on attachment 721923 [details] [diff] [review]

Will take this low risk fix since we're at our 4th beta of the cycle, please land today so it's in tomorrow's beta build.
Attachment #721923 - Flags: approval-mozilla-beta?
Attachment #721923 - Flags: approval-mozilla-beta+
Attachment #721923 - Flags: approval-mozilla-aurora?
Attachment #721923 - Flags: approval-mozilla-aurora+
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0

Verified on Firefox 21.0b5, on Windows 7, 64 bits using the two provided testcases.
Verified as fixed on Windows XP using FF 22.b1:

Mozilla/5.0 (Windows NT 5.1; rv:22.0) Gecko/20100101 Firefox/22.0(20130514181517)
Verified as fixed on Win XP using FF 20.0.1 and FF 21.0 too:

Mozilla/5.0 (Windows NT 5.1; rv:20.0) Gecko/20100101 Firefox/20.0(20130409194949)

Mozilla/5.0 (Windows NT 5.1; rv:21.0) Gecko/20100101 Firefox/21.0 (20130511120803)
You need to log in before you can comment on or make changes to this bug.