Re: [csswg-drafts] [css-forms-1] Password visibility toggle (#11845)

> * For `appearance: auto` in UAs that do not want it by default, this gets `display: none !important` by default (`auto` style should match the platform)
> * For `appearance: none` (or implicit `none` appearance) in UAs that do not want it by default, this gets `display: none` (so developers can choose to show it)
> * For `appearance: base`: this gets the same `display` by default in _all_ UAs, whether it's `none` or `inline-block`/`block` is up for discussion, but it should be predictable in all UAs.

I guess I'm curious what you had in mind in terms of implementing these? It sounds like it would make the cascaded value of `display` dependent on the cascaded value of `auto`, and properties can't really depend on each other like that.

The compat issue, as I understand it, is that the `::reveal` pseudo conflicted with existing site-provided reveal buttons. So what I had in mind was that `::reveal` would parse and cascade as normal for all appearance values, but if the UA doesn't want to expose a built-in control for `appearance: auto` then the pseudo would have nothing to target, and thus there would be no visible effect.

(This is what Edge does for the `::-ms-clear` selector. Internet Explorer and Edge Legacy had a "clear text" button which that selector targeted. The button has since been removed, but we had to continue parsing the selector to avoid breaking existing content.)

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


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

Received on Friday, 28 March 2025 16:19:30 UTC