In WebKit's bugzilla instance, the CC list's "Edit|Add..." autocomplete dropdown has an unexpectedly transparent background
Categories
(Core :: Layout: Form Controls, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr91 | --- | unaffected |
firefox100 | --- | wontfix |
firefox101 | --- | wontfix |
firefox102 | --- | fixed |
People
(Reporter: dholbert, Assigned: emilio)
References
(Regression)
Details
(Keywords: regression)
Attachments
(4 files)
STR:
- Be logged in on WebKit's bugzilla instance, like e.g. https://bugs.webkit.org
- Visit some bug report over there, like this one: https://bugs.webkit.org/show_bug.cgi?id=240744
- Next to "CC List" at top right, click "Edit" and then type "a" into the "Add" textfield.
ACTUAL RESULTS:
The autocomplete-dropdown's text is superimposed/intermixed with the text in the multi-select pane below it (which it is supposed to cover up).
EXPECTED RESULTS:
The multiselect (and its text) should be fully obscured by the dropdown.
mozregression says this regressed from bug 1741776.
Reporter | ||
Comment 1•3 years ago
|
||
This is surprisingly easy to trigger... I'm surprised we haven't had this bug reported yet.
This reduced testcase is just:
<style>
.abspos {
position: absolute;
background-color: cyan;
height: 300px;
width: 300px;
}
</style>
<div class="abspos"></div>
<select multiple="multiple">
<option>This text shouldn't be visible.</option>
</select>
The abspos thing correctly paints in front of the option, but we incorrectly paint the option text in the foreground (in front of the abspos thing).
Reporter | ||
Comment 2•3 years ago
|
||
Calling this S3 given we've been shipping with it for a while with no reports yet (or at least, none that we connected to the regressing bug before this point)... But it looks pretty darn broken on WebKit's bugzilla instance, so (to the extent that web content hits it) it feels somewhere between S2 and S3.
Reporter | ||
Comment 3•3 years ago
|
||
Reporter | ||
Comment 4•3 years ago
•
|
||
Here's a testcase like testcase 1, but with several divs that create stacking contexts after the abspos thing, instead of a multi-select element.
As shown here, the stacking contexts (from will-change:transform
and opacity:0.9
) do paint in front of their abspos predecessor; but the regular div paints behind it. This behavior is interoperable, and required by CSS's elaborate description of stacking contexts, I think.
So, our current behavior on testcase 1 (with the multi-select) is really a "correct" downstream result of us styling our option elements with will-change:transform
in bug 1741776.
I think we didn't really intend for this will-change:transform
styling to make a user-observable difference (outside of the fact that we did indeed want to contain positioned descendants, as described in bug 1741776). So, I suspect the eventual fix here might be to revert bug 1741776's fix and achieve the same outcome without forcing the option element to be a stacking context, perhaps?
(ni=emilio, in case he has any thoughts/ideas - thanks!)
Comment 5•3 years ago
|
||
Set release status flags based on info from the regressing bug 1741776
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 6•3 years ago
|
||
We could have a different property or something but this seems
reasonable as well probably.
Updated•3 years ago
|
Comment 9•3 years ago
|
||
bugherder |
Updated•3 years ago
|
Updated•3 years ago
|
Description
•