Summary: add support for the CSS UI property 'appearance:none | auto' with '-webkit-appearance' as an alias. Unship '-moz-appearance'.

'appearance:none' works exactly as '-moz-appearance:none' -- it turns off the native theme for elements that have one. 'appearance:auto' (the initial value) makes an element have its default appearance. We are currently shipping '-moz-appearance' with a large number of other values, such as 'button', 'range', 'radio' etc. '-moz-appearance' will continue to work exactly as is, but will now be restricted to UA and chrome style sheets, i.e. it will *not* be available to web content.

Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1333482

Spec: https://drafts.csswg.org/css-ui-4/#appearance-switching

Platfrom coverage: All

Estimated release: 54 (tentatively)

Preferences: layout.css.appearance.enabled for 'appearance'/'-webkit-appearance' (enabled by default), layout.css.moz-appearance.enabled for '-moz-appearance' (disabled by default). All these properties are available to UA and chrome style sheets though, regardless of the preference settings.

Devtools bug: None needed, I think.

Status in other implementations: No other UA implements the unprefixed 'appearance' as far as I know. Edge implements '-webkit-appearance:none' but no other values, nor do they implement it unprefixed. WebKit/Blink implements '-webkit-appearance' with a plethora of values, much like we currently do for '-moz-appearance'. I don't know what their plans are for 'appearance' and/or restricting the number of supported values.

I think the fact that Edge currently only ships '-webkit-appearance:none' proves that's all that is needed for web compat. I tend to think we should also implement the unprefixed property though, because that's what the CSS spec says and I don't think it'll have any negative impact in terms of web compat (I admit I'm not 100% certain of that though, but we can adjust as needed).

Tests: Reftests and mochitests included.
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to