Closed
Bug 1357655
Opened 6 years ago
Closed 6 years ago
-webkit-appearance: inherit should resolve to appearance: none when parent is undefined
Categories
(Core :: Layout: Form Controls, defect)
Tracking
()
RESOLVED
FIXED
mozilla55
People
(Reporter: karlcow, Assigned: MatsPalmgren_bugz)
References
Details
(Keywords: dev-doc-complete, Whiteboard: [webcompat])
Attachments
(4 files)
46.11 KB,
image/png
|
Details | |
1.24 KB,
text/html
|
Details | |
14.63 KB,
patch
|
bzbarsky
:
review+
gchang
:
approval-mozilla-beta+
|
Details | Diff | Splinter Review |
3.86 KB,
patch
|
Details | Diff | Splinter Review |
This is a spin off of https://webcompat.com/issues/5910 The test case is <div> <select> <option value="001">001</option> <option value="002">002</option> </select> </div> with select { -webkit-appearance: inherit; } in Gecko, it shows a -moz-menulist widget, aka it resolves to -webkit-appearance: auto; in WebKit and Blink, it shows nothing, aka it resolves to -webkit-appearance: none by default. -webkit-appearance: auto resolves by default to a menulist widget (on Desktop on WebKit, Blink and Gecko)
![]() |
Reporter | |
Comment 1•6 years ago
|
||
Created a test case here https://codepen.io/webcompat/pen/YVwXda (I haven't tested yet on real mobile devices).
Flags: webcompat?
Flags: needinfo?(mats)
Whiteboard: [webcompat]
![]() |
Reporter | |
Updated•6 years ago
|
See Also: → https://webcompat.com/issues/5910
Assignee | ||
Comment 2•6 years ago
|
||
Results in Chrome: div: none select with -webkit-appearance:inherit: none button: button button w. -webkit-appearance:initial: none Results in Nightly: div: auto select with -webkit-appearance:inherit: auto button: auto button w. -webkit-appearance:initial: auto
Assignee: nobody → mats
Flags: needinfo?(mats)
Assignee | ||
Comment 3•6 years ago
|
||
Hmm, so this means '-webkit-appearance' in Chrome and the css-ui spec for 'appearance' aren't reconcilable. https://drafts.csswg.org/css-ui-4/#appearance-switching We should probably change the spec to say 'none' is the initial value, and then add 'appearance:auto' in all rules in our UA sheets that have a -moz-appearance declaration.
tracking-firefox54:
--- → ?
tracking-firefox55:
--- → ?
![]() |
||
Comment 4•6 years ago
|
||
Sounds about right. Please raise the relevant spec issues...
![]() |
Reporter | |
Comment 5•6 years ago
|
||
Mats, do you want me to provide a patch for it?
Flags: needinfo?(mats)
Assignee | ||
Comment 6•6 years ago
|
||
Thanks for the kind offer, but I already have patches that seems to work: https://treeherder.mozilla.org/#/jobs?repo=try&revision=786ce80b6fa26eacb9718b37c7f185b17479e6aa
Flags: needinfo?(mats)
Assignee | ||
Comment 7•6 years ago
|
||
BTW, I found some XUL files with <hbox style="-moz-appearance:listbox"> and whatnot, which doesn't work without also specifying 'appearance:auto' now that 'none' is the initial value. I'm worried that XUL add-ons might do something similar, so I suspect we need to also add a rule in xul.css to specify 'appearance:auto' as the default for all generic XUL elements.
Assignee | ||
Comment 8•6 years ago
|
||
Safari and Edge have the same results as Chrome for the testcase. Filed a spec issue: https://github.com/w3c/csswg-drafts/issues/1250
See Also: → https://github.com/w3c/csswg-drafts/issues/1250
Assignee | ||
Comment 9•6 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=967692a6964dcec54461deb9b4e70d90535d161e
Assignee | ||
Comment 10•6 years ago
|
||
Attachment #8860099 -
Flags: review?(bzbarsky)
Assignee | ||
Comment 11•6 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=e5b7532833b75b695854d48523089e90d1cbb03f
![]() |
||
Comment 12•6 years ago
|
||
Comment on attachment 8860099 [details] [diff] [review] part 1 - [css-ui] Make 'none' the initial value for 'appearance' for web and UA compatibility. Add 'appearance:auto' to UA sheets for form controls, XUL etc where needed. I don't think you need the xul.css change. We always apply minimal-xul.css to documents. r=me with that bit removed.
Attachment #8860099 -
Flags: review?(bzbarsky) → review+
Comment 13•6 years ago
|
||
Pushed by mpalmgren@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/0f2c055d69b2 part 1 - [css-ui] Make 'none' the initial value for 'appearance' for web and UA compatibility. Add 'appearance:auto' to UA sheets for form controls, XUL etc where needed. r=bz https://hg.mozilla.org/integration/mozilla-inbound/rev/c132d492e5ba part 2 - [css-ui] Add an explicit 'appearance:auto' to a couple of reftest that needs it.
Comment 14•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/0f2c055d69b2 https://hg.mozilla.org/mozilla-central/rev/c132d492e5ba
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
Assignee | ||
Comment 15•6 years ago
|
||
Comment on attachment 8860099 [details] [diff] [review] part 1 - [css-ui] Make 'none' the initial value for 'appearance' for web and UA compatibility. Add 'appearance:auto' to UA sheets for form controls, XUL etc where needed. Approval Request Comment [Feature/Bug causing the regression]: -webkit-appearance feature (bug 1333482) [User impact if declined]: invisible checkbox/radio controls in some rare cases [Is this code covered by automated tests?]:yes [Has the fix been verified in Nightly?]:no [Needs manual test from QE? If yes, steps to reproduce]: no [List of other uplifts needed for the feature/fix]: [Is the change risky?]:no [Why is the change risky/not risky?]:trivial code changes [String changes made/needed]:none We should take this in Beta v54 to reduce the web-compat risk for bug 1333482 / bug 605985.
Attachment #8860099 -
Flags: approval-mozilla-beta?
Comment 16•6 years ago
|
||
This broke TB twist lists on Mac only, see bug 1358840. We're looking into whether this can be fixed in C-C.
Comment 17•6 years ago
|
||
The 'appearance: auto' in minimal-xul.css doesn't seem to have any effect on treechildren elements, so treechildren::-moz-tree-twisty and so on have lost their native styling.
Assignee | ||
Comment 18•6 years ago
|
||
Sorry about that. I guess the problem is that the universal selector * doesn't apply to pseudo-elements (sigh). I guess we have to make an exhaustive list of XUL pseudos too. Unless we have some internal non-standard ::-moz-any-pseudo or something...
Comment 19•6 years ago
|
||
Track 54+/55+ as web compatibility issue.
Comment 20•6 years ago
|
||
Comment on attachment 8860099 [details] [diff] [review] part 1 - [css-ui] Make 'none' the initial value for 'appearance' for web and UA compatibility. Add 'appearance:auto' to UA sheets for form controls, XUL etc where needed. Fix a web compatibility issue. Beta54+. Should be in 54 beta 2.
Attachment #8860099 -
Flags: approval-mozilla-beta? → approval-mozilla-beta+
Comment 21•6 years ago
|
||
bugherderuplift |
https://hg.mozilla.org/releases/mozilla-beta/rev/3156446a325e https://hg.mozilla.org/releases/mozilla-beta/rev/40bd1b4eb78c
Comment 22•6 years ago
|
||
(In reply to Mats Palmgren (:mats) from comment #15) > [Is this code covered by automated tests?]:yes > [Has the fix been verified in Nightly?]:no > [Needs manual test from QE? If yes, steps to reproduce]: no Setting qe-verify- based on Mats' assessment on manual testing needs and the fact that this fix has automated coverage.
Flags: qe-verify-
Comment 23•6 years ago
|
||
Adding dev-doc-needed - we probably ought to mention this somewhere in the docs.
Keywords: dev-doc-needed
Comment 24•6 years ago
|
||
I have added a note about this to the appearance browser compat data: https://developer.mozilla.org/en-US/docs/Web/CSS/appearance#Browser_compatibility The "Initial value" info at the top of the page still says "auto", but I've submitted a PR to change this in our data repo: https://github.com/mdn/data/pull/83 I have also added a note the Fx55 rel notes: https://developer.mozilla.org/en-US/Firefox/Releases/55#CSS Let me know if this looks OK, or if anything else is needed. Thanks!
Keywords: dev-doc-needed → dev-doc-complete
![]() |
||
Comment 25•6 years ago
|
||
Chris, support for unprefixed "appearance" got backed out; see bug 1365614. You should probably talk to Mats about what the documentation should actually say here, but I believe at this point no engine ships the "appearance" property that's in the spec, nor has any plans to. The prefixed "-whatever-appearance" properties have totally different behavior from the spec property, and shipping the spec property in the form it's in right now is almost certainly not web-compatible...
Flags: needinfo?(cmills)
Comment 26•6 years ago
|
||
(In reply to Boris Zbarsky [:bz] (still a bit busy) (if a patch has no decent message, automatic r-) from comment #25) > Chris, support for unprefixed "appearance" got backed out; see bug 1365614. > > You should probably talk to Mats about what the documentation should > actually say here, but I believe at this point no engine ships the > "appearance" property that's in the spec, nor has any plans to. The > prefixed "-whatever-appearance" properties have totally different behavior > from the spec property, and shipping the spec property in the form it's in > right now is almost certainly not web-compatible... OK, thanks Boris. I'll contact Mats offline and follow up on this; at this point I am confused as to what I really need to write.
Flags: needinfo?(cmills)
![]() |
Reporter | |
Comment 27•6 years ago
|
||
The issue on Firefox Nightly 55.0a1 (2017-05-24) (Desktop and Android) for https://webcompat.com/issues/5910 aka https://rumble.com/register.php?src=https%3A//rumble.com/ is not solved. The reason is the site contains only -webkit-appearance: inherit; which is ignored for us, and the same for: * -webkit-appearance: none; (ignored on Gecko) * appearance: inherit; (ignored on Gecko) The only way to fix it on their site for now is either to use -moz-appearance: inherit (which resolves to none) like in WebKit/Blink world. -moz-appearance: none appearance: none is not working because of Bug 1365614 being backed out.
![]() |
Reporter | |
Comment 28•6 years ago
|
||
Should we reopen this one?
Comment 29•6 years ago
|
||
This was backed out in bug 1365614 (along with other bugs).
You need to log in
before you can comment on or make changes to this bug.
Description
•