2026
17 featuresThe font-family: math CSS declaration uses the browser default font face for displaying mathematical expressions.
The WebTransport API transmits data between a client and a server, by using the HTTP/3 protocol.
The Reporting-Endpoints HTTP header and ReportingObserver() API send selected reports, such as Content Security Policy (CSP) violation reports or crash reports, to a nominated URL or callback function.
The text-indent: each-line CSS declaration indents text after forced breaks as well as to the first line of a block.
The text-indent: hanging CSS declaration indents all lines except the first.
Branch hints in WebAssembly allows a browser to optimize performance when a branch is a likely to take a specific path.
The shape() CSS function creates shapes with a series of commands like line, move, and curve. It can be used with clip-path and shape-outside.
Trusted types allow you to lock down insecure parts of the DOM API and prevent client-side cross-site scripting (XSS) attacks.
The getOrInsert() and getOrInsertComputed() methods of Map objects get a value, setting and getting a default value if needed.
Zstandard or zstd is a fast lossless compression algorithm. When used as a content encoding, it is often faster and offers better compression than brotli.
The :active-view-transition CSS pseudo-class matches the root element when a view transition is active. The :active-view-transition-type() CSS pseudo-class matches only when the active view transition was started with the specified type.
The navigator.serviceWorker.register() method accepts { type: "module" } to load scripts that use import and export. Also known as ECMAScript modules or ESM in service workers.
2025
13 featuresThe text-decoration-line: spelling-error and text-decoration-line: grammar-error CSS declarations apply the browser's marking for spelling and grammatical mistakes. This is typically a wavy underline in red or green.
The command and commandfor attributes for the <button> HTML element dispatch an action to an element when the button is invoked (by click or keystroke), as a declarative alternative to addEventListener() calls or onclick attribute handlers.
The document.caretPositionFromPoint() method finds an insertion point, represented by a DOM node and an offset within that node, for given coordinates in the viewport.
The scrollbar-color CSS property sets the color of the scrollbar track and thumb.
The scrollend event fires when an element or document has finished scrolling.
An event or first-input performance entry measures the latency of user input events, such as mouse clicks or keypresses. They're used to calculate interaction to next paint (INP), a common metric for perceived responsiveness.
A largest-contentful-paint performance entry measures the time it takes for the largest image or text to appear. Largest contentful paint (LCP) is a common metric for perceived loading times.
The Atomics.waitAsync() static method waits for a value in a shared memory location, providing a promise when the expected value is not yet in memory. The waitAsync() method is a non-blocking alternative to Atomics.wait().
The view-transition-class CSS property sets a name that can be used to apply styles to multiple named view transition pseudo-elements.
View transitions allow you to create animated visual transitions between different states of a document.
The WebRTC encoded transform API allows you to modify audio and video streams in WebRTC connections. For example, it can be used for visual effects or custom codecs.
The ::details-content pseudo-element selects the expandable content of a <details> element, excluding the <summary>.
The rel="dns-prefetch" attribute for the <link> HTML element is a hint to the browser that the page or user is likely to request resources from another domain, so the browser should preemptively resolve DNS for the href value's domain.