1. EventTarget.addEventListener()

    The modern standard API for adding DOM event handlers. Introduced in the DOM Level 2 Events spec. Also implies support for `removeEventListener`, the [capture phase](https://dom.spec.whatwg.org/#dom-event-capturing_phase) of DOM event dispatch, as well as the `stopPropagation()` and `preventDefault()` event methods.

  2. classList (DOMTokenList)

    Method of easily manipulating classes on elements, using the `DOMTokenList` object.

  3. Crisp edges/pixelated images

    Scales images with an algorithm that preserves edges and contrast, without smoothing colors or introducing blur. This is intended for images such as pixel art. Official values that accomplish this for the `image-rendering` property are `crisp-edges` and `pixelated`.

  4. :focus-visible CSS pseudo-class

    The `:focus-visible` pseudo-class applies while an element matches the `:focus` pseudo-class, and the UA determines via heuristics that the focus should be specially indicated on the element (typically via a “focus ring”).

  5. :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.

  6. selector list argument of :not()

    Selectors Level 3 only allowed `:not()` pseudo-class to accept a single simple selector, which the element must not match any of. Thus, `:not(a, .b, [c])` or `:not(a.b[c])` did not work. Selectors Level 4 allows `:not()` to accept a list of selectors. Thus, `:not(a):not(.b):not([c])` can instead be written as `:not(a, .b, [c])` and `:not(a.b[c])` works as intended.

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

  8. disabled attribute of the fieldset element

    Allows disabling all of the form control descendants of a fieldset via a `disabled` attribute on the fieldset element itself.

  9. CSS Flexible Box Layout Module

    Method of positioning elements in horizontal or vertical stacks. Support includes all properties prefixed with `flex`, as well as `display: flex`, `display: inline-flex`, `align-content`, `align-items`, `align-self`, `justify-content` and `order`.

  10. display: flow-root

    The element generates a block container box, and lays out its contents using flow layout. It always establishes a new block formatting context for its contents. It provides a better solution to the most use cases of the "clearfix" hack.

  11. HEIF/ISO Base Media File Format

    HEIF (High Efficiency Image File Format) is a standard developed by the Moving Picture Experts Group (MPEG) for storage and sharing of images and image sequences. Can use `.heif` or `.heic` file extensions.

  12. Page Visibility

    JavaScript API for determining whether a document is visible on the display

  13. Permissions API

    High-level JavaScript API for checking and requesting permissions

  14. Permissions Policy

    A security mechanism that allows developers to explicitly enable or disable various powerful browser features for a given site. Similar to [Document Policy](/document-policy).

  15. Promise.prototype.finally

    When the promise is settled, whether fulfilled or rejected, the specified callback function is executed.

  16. Promises

    A promise represents the eventual result of an asynchronous operation.

  17. text-emphasis styling

    Method of using small symbols next to each glyph to emphasize a run of text, commonly used in East Asian languages. The `text-emphasis` shorthand, and its `text-emphasis-style` and `text-emphasis-color` longhands, can be used to apply marks to the text. The `text-emphasis-position` property, which inherits separately, allows setting the emphasis marks' position with respect to the text.

  18. csstransformvalue api: is2d

  19. event api: istrusted

  20. external api: issearchproviderinstalled

  21. fetchevent api: isreload

  22. filesystementry api: isdirectory

  23. filesystementry api: isfile

  24. filesystemhandle api: issameentry

  25. htmlelement api: iscontenteditable

  26. htmlimageelement api: ismap

  27. idbindex api: isautolocale

  28. inputevent api: iscomposing

  29. issecurecontext api

  30. issecurecontext api: considers `window.opener`

  31. issecurecontext api: available in workers

  32. keyboardevent api: iscomposing

  33. mediarecorder api: istypesupported

  34. mediasource api: istypesupported

  35. node api: isconnected

  36. node api: isdefaultnamespace

  37. node api: isequalnode

  38. node api: issamenode

  39. node api: issupported

  40. pointerevent api: isprimary

  41. range api: ispointinrange

  42. scheduling api: isinputpending

  43. selection api: iscollapsed

  44. usbdevice api: isochronoustransferin

  45. usbdevice api: isochronoustransferout

  46. xrview api: isfirstpersonobserver

  47. css property: isolation

  48. html element: img: ismap

  49. javascript built-in: isfinite

  50. javascript built-in: isnan