1. ::placeholder CSS pseudo-element

    The ::placeholder pseudo-element represents placeholder text in an input field: text that represents the input and provides a hint to the user on how to fill out the form. For example, a date-input field might have the placeholder text `YYYY-MM-DD` to clarify that numeric dates are to be entered in year-month-day order.

  2. :placeholder-shown CSS pseudo-class

    Input elements can sometimes show placeholder text as a hint to the user on what to type in. See, for example, the placeholder attribute in HTML5. The :placeholder-shown pseudo-class matches an input element that is showing such placeholder text.

  3. Datalist element

    Method of setting a list of options for a user to select in a text field, while leaving the ability to enter a custom value.

  4. Color input type

    Form field allowing the user to select a color.

  5. Date and time input types

    Form field widgets to easily allow users to enter a date, time or both, generally by using a calendar/time input widget. Refers to supporting the following input types: `date`, `time`, `datetime-local`, `month` & `week`.

  6. 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.

  7. accept attribute for file input

    Allows a filter to be defined for what type of files a user may pick with from an `<input type="file">` dialog

  8. Multiple file selection

    Allows users to select multiple files in the file picker.

  9. inputmode attribute

    The `inputmode` attribute specifies what kind of input mechanism would be most helpful for users entering content into the form control.

  10. Minimum length attribute for input fields

    Declares a lower bound on the number of characters a user can input.

  11. Range input type

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

  12. maxlength attribute for input and textarea elements

    Declares an upper bound on the number of characters the user can input. Normally the UI ignores attempts by the user to type in additional characters beyond this limit.

  13. MediaRecorder API

    The MediaRecorder API (MediaStream Recording) aims to provide a really simple mechanism by which developers can record media streams from the user's input devices and instantly use them in web apps, rather than having to perform manual encoding operations on raw PCM data, etc.

  14. 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.

  15. css property: -moz-user-input

  16. css property: -moz-user-input: auto

  17. css property: -moz-user-input: none