Re: [csswg-drafts] [selectors-4] Replace :user-valid/:user-invalid definition with HTML spec (#9308)

So I think the existing definition that this is removing is a bit of a mess:  it seems to talk about relationships between some of the other pseudo-classes (`:invalid`, `:out-of-range`, `:required`) that should perhaps be defined in the sections for those pseudo-classes but probably shouldn't be defined here.

I think the essence of these pseudo-classes is that they are subsets of `:valid` and `:invalid` that only match following certain user interactions that should call attention to the validity/invalidity, such as the user interacting with the control or the user attempting to submit the form.  HTML mandates both of these; the text in CSS mandated only the second (submission) but not the first (interaction).  The text in CSS also mandated a behavior that the HTML spec *doesn't* have, which is that they stop matching when the user interacts with the control again.

So I think perhaps the key things to add back to address @fantasai's concern are:
* making the parallel with `:valid` and `:invalid` more explicit again (but hopefully dropping the muddled bit about the other pseudos)
* explicitly mentioning submitting the form as a type of (or alternative to) significant user interaction with the control

Hopefully we're ok with dropping the bit about no longer matching when the user returns to the control, given that HTML doesn't say that.  (Or do any engines implement that?)

-- 
GitHub Notification of comment by dbaron
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/pull/9308#issuecomment-2287167299 using your GitHub account


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

Received on Tuesday, 13 August 2024 21:27:08 UTC