Re: [csswg-drafts] [css-ui] appearance: base to enable interoperable styling of controls/components (#5998)

> Assuming that form controls are actually still functional with `appearance: base`, this doesn’t actually seem like the end of the world? Compact impact (not just the quantity, but also the type of impact) is a factor to consider when making changes, weighed against the benefit of the change. It doesn’t mean that if there is _any_ compat impact, the change should not be made. In this case, form control rendering without `appearance: base` is "anything goes" anyway, so I don't see how a base appearance is any different than a different default style for these use cases.

This doesn't bear out in practice. For example, in 2020, Chromium launched a "form controls refresh", which was just a moderate re-styling of the built-in form controls. In a few cases, those new styles changed the size of elements by a few pixels, e.g. by changing padding from 2px to 1px. We had enormous pressure to change back, and quite a bit of web compat breakage that threatened to require us to roll back the project. And that was just from relatively small changes. I would be very concerned if we just said "it'll be fine to break sites that do `*{appearance:base}` in the future". We would really like to make all form controls stylable as future projects, and this would put that effort at risk.

I think @frivoal said it best when talking about the non-auto/none values of `appearance`, such as `appearance:button`. Those are there for historical and backwards-compat reasons, and the eventual end-state is just `auto` or `none`. I think this issue adds one more to that list: `auto`, `none`, or `base`. And there's an unfortunate but necessary requirement for some intermediate values (e.g. `base-select`) for forwards-compat reasons, but the eventual goal is to get back to just the three values once the work is done to add support for `base` to all form controls. That work will take some time though, so it's not practical to try to retrofit all form controls in one enormous project. (The work to do this just for `<select>` has been going for 5+ years now. Let's not wait another 20 years to get form control stylability, please. 😃 )

-- 
GitHub Notification of comment by mfreed7
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/5998#issuecomment-2101509763 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 8 May 2024 21:27:39 UTC