1. asm.js

    An extraordinarily optimizable, low-level subset of JavaScript, intended to be a compile target from languages like C++.

  2. Audio element

    Method of playing sound on webpages (without requiring a plug-in). Includes support for the following media properties: `currentSrc`, `currentTime`, `paused`, `playbackRate`, `buffered`, `duration`, `played`, `seekable`, `ended`, `autoplay`, `loop`, `controls`, `volume` & `muted`

  3. Basic console logging functions

    Method of outputting data to the browser's console, intended for development purposes.

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

  5. CSS3 image-orientation

    CSS property used generally to fix the intended orientation of an image. This can be done using 90 degree increments or based on the image's EXIF data using the "from-image" value.

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

    ECMAScript Decorators are an in-progress proposal for extending JavaScript classes. Decorators use a special syntax, prefixed with an `@` symbol and placed immediately before the code being extended.

  8. ui-serif, ui-sans-serif, ui-monospace and ui-rounded values for font-family

    Allows more control when choosing system interface fonts

  9. HEVC/H.265 video format

    The High Efficiency Video Coding (HEVC) compression standard is a video compression format intended to succeed H.264. It is hard for browsers to universally support HEVC because it is [complex and expensive to license](https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding#Patent_licensing). HEVC competes with [AV1](/av1) which has similar compression quality and provides a free license.

  10. Email, telephone & URL input types

    Text input fields intended for email addresses, telephone numbers or URLs. Particularly useful in combination with [form validation](https://caniuse.com/#feat=form-validation)

  11. Search input type

    Search field form input type. Intended to look like the underlying platform's native search field widget (if there is one). Other than its appearance, it's the same as an `<input type="text">`.

  12. Passive event listeners

    Event listeners created with the `passive: true` option cannot cancel (`preventDefault()`) the events they receive. Primarily intended to be used with touch events and `wheel` events. Since they cannot prevent scrolls, passive event listeners allow the browser to perform optimizations that result in smoother scrolling.

  13. Video element

    Method of playing videos on webpages (without requiring a plug-in). Includes support for the following media properties: `currentSrc`, `currentTime`, `paused`, `playbackRate`, `buffered`, `duration`, `played`, `seekable`, `ended`, `autoplay`, `loop`, `controls`, `volume` & `muted`

  14. CSS -webkit-user-drag property

    The non-standard `-webkit-user-drag` CSS property can be used to either make an element draggable or explicitly non-draggable (like links and images). See the standardized [draggable attribute/property](/mdn-api_htmlelement_draggable) for the recommended alternative method of accomplishing the same functionality.

  15. audioscheduledsourcenode api: `ended` event

  16. htmlmediaelement api: ended

  17. htmlmediaelement api: `ended` event

  18. htmlmediaelement api: mozcapturestreamuntilended

  19. mediasource api: `sourceended` event

  20. mediastreamtrack api: `ended` event

  21. screen api: isextended

  22. xrview api: recommendedviewportscale

  23. javascript built-in: intl: datetimeformat: `datetimeformat()` constructor: `options` parameter: `options.timezonename` parameter: `shortgeneric`/`longgeneric`/`shortoffset`/`longoffset` as `options.timezonename` option