2026
30 featuresThe progress() CSS function returns a ratio for the relative position of one value between two other values, clamped between 0 and 1. You can use it to interpolate a value for other calculations.
The :playing, :paused, :seeking, :buffering, :stalled, :muted, and :volume-locked CSS pseudo-classes match <audio> and <video> elements based on their state.
The sibling-count() and sibling-index() CSS functions return integers that are useful to style elements based on their positions among siblings or on the number of siblings, for example as part of a calc() expression.
The getter methods of the Intl.Locale API provide supplemental information about a Unicode locale, such as the locale's calendar (for example, the first day in a week or the weekend start day), writing direction, 12- or 24-hour cycles, and numbering system.
The field-sizing CSS property allows form controls such as <textarea> to be sized based on their content.
Container style queries with the @container at-rule apply styles to an element based on the values of custom properties of its container.
The :open CSS pseudo-class matches elements that have open states, like <details>, <dialog>, or <select>, based on their state.
The source property of a ToggleEvent object is the element which triggered the toggle event to fire for a popover, <dialog>, or <details> element, if applicable.
The image-rendering: crisp-edges CSS declaration scales images to preserve lines without blurring.
The text-decoration-skip-ink: all CSS declaration forces interruptions in underlines and overlines where the line would cross a glyph. This contrasts with auto, which does not skip for CJK glyphs.
The Math.sumPrecise() static method returns the sum of an iterable of numbers. It avoids the precision loss of intermediate partial sums, as found using reduce() or a loop to add together an array of values.
The contrast-color() CSS function picks a color that has guaranteed contrast against a specified foreground or background color.
The @scope CSS at-rule sets the scope for a group of rules.
CSP violation reporting sends a report to a URL nominated by the Reporting-Endpoints header or the ReportingObserver API when a page violates its content security policy.
Custom highlights style arbitrary text ranges, without adding extra elements to the DOM.
The Iterator.concat() JavaScript method returns an iterator that yields values from a sequence of iterators, exhausting each iterator before moving on to the next.
The font-family: math CSS declaration uses the browser default font face for displaying mathematical expressions.
A ReadableStream constructed with { type: "bytes" } reads bytes from a stream without making extra copies, improving efficiency for streams of large chunks. Also known as BYOB or bring your own buffer.
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 WebTransport API transmits data between a client and a server, by using the HTTP/3 protocol.
The baseline-shift CSS property sets the position of an element relative to its dominant baseline.
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.
Trusted types allow you to lock down insecure parts of the DOM API and prevent client-side cross-site scripting (XSS) attacks.
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.
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.