1. :default CSS pseudo-class

    The `:default` pseudo-class matches checkboxes and radio buttons which are checked by default, `<option>`s with the `selected` attribute, and the default submit button (if any) of a form.

  2. :is() CSS pseudo-class

    The `:is()` (formerly `:matches()`, formerly `:any()`) pseudo-class checks whether the element at its position in the outer selector matches any of the selectors in its selector list. It's useful syntactic sugar that allows you to avoid writing out all the combinations manually as separate selectors. The effect is similar to nesting in Sass and most other CSS preprocessors.

  3. :optional CSS pseudo-class

    The `:optional` pseudo-class matches form inputs (`<input>`, `<textarea>`, `<select>`) which are not `:required`.

  4. Color input type

    Form field allowing the user to select a color.

  5. input event

    The `input` event is fired when the user changes the value of an `<input>` element, `<select>` element, or `<textarea>` element. By contrast, the "change" event usually only fires after the form control has lost focus.

  6. Range input type

    Form field type that allows the user to select a value using a slider widget.

  7. matches() DOM method

    Method of testing whether or not a DOM element matches a given selector. Formerly known (and largely supported with prefix) as matchesSelector.

  8. readonly attribute of input and textarea elements

    Makes the form control non-editable. Unlike the `disabled` attribute, `readonly` form controls are still included in form submissions and the user can still select (but not edit) their value text.

  9. htmlselectelement api: form

  10. css selector: `:invalid`: applies to `<form>` elements

  11. css selector: `:valid`: applies to `<form>` elements

  12. html element: select: form