2017
27 featuresThe vw, vh, vmin, and vmax CSS viewport units are relative to the size of the viewport, and are used to size elements in relation to the viewport's dimensions.
The WebAssembly.instantiate() and WebAssembly.instantiateStreaming() global static methods load WebAssembly code (also known as Wasm), a portable binary instruction format.
The Intl API provides language sensitive string comparison, number formatting, date and time formatting, and more.
Brotli is a lossless data compression algorithm. When used as a content encoding, it often provides better compression than gzip.
The navigator.mediaDevices.getUserMedia() API requests access to devices that produce audio or video streams, such as microphones or video cameras.
A resource performance entry records when a network event happens while loading a resource, such as when a connection starts and ends. You can use this information to measure loading times.
The Web Cryptography API performs low-level cryptographic operations, such as encryption, decryption, and signature verification. Also known as the Web Crypto API.
The compositionstart, compositionupdate, and compositionend events fire when an input method editor adds characters that might not be commonly available on keyboards. Examples of these characters are emoji, logograms in Asian languages, or input from speech recognition processors.
The WEBGL_debug_renderer_info extension for WebGL 1.0 and 2.0 contexts exposes information about the graphics driver for debugging purposes.
The async and await keywords allow you to use the asynchronous, promise-based behavior of a function without using promise chains.
Custom properties are CSS properties prefixed with -- that set values you can reuse with the var() function. For example, you can set a --key-color property to reuse as border-color: var(--key-color). Also known as CSS variables.
The padStart() and padEnd() methods of strings return a string lengthened to a minimum number of characters by adding characters to the start or end of the string.
The -webkit-text-stroke-width and -webkit-text-stroke-color CSS properties set the thickness and color of text outlines. The -webkit-text-fill-color sets the color within text character outlines. Both default to the text color.
The font-feature-settings CSS property sets low-level OpenType feature tags for a font. When possible, use font-variant instead.
The "copy", "cut", and "paste" events fire on elements when the user starts an action with the clipboard.
The exponentiation (**) operator returns the result of raising the first operand to the power of the second operand.
The srcset and sizes attributes for <img> elements set a list of possible sources for the image and a corresponding list of size conditions for choosing a source, to show a responsive image that fits the size of the display.
The writing-mode CSS property sets whether text is laid out horizontally or vertically, and left to right, or right to left.
The <input type="range"> element represents a slider for choosing an inexact value between a minimum and maximum value.
Multi-column layout flows an element's content across one or more columns in a single row, without affecting the display property of its children.
The column-fill CSS property sets the distribution of content across columns in a multi-column layout.
The border-image CSS property draws an image around an element.
2016
3 featuresThe @font-face CSS at-rule creates a custom font-family value. The at-rule's descriptors set the font's name, source, and various display settings.
The @supports (-webkit-transform-3d) CSS media query is a standardized compatibility alternative to @supports (transform-style).
The copyWithin() method of arrays and typed arrays shifts or copies items of an array to another index of the array without changing its length.