2026
30 featuresAsynchronous iteration of a stream allows you to use for await … of loops to iterate through a stream's incoming data.
The JavaScript promise integration (JSPI) suspends a WebAssembly module when it calls a JavaScript method that returns a promise. The module resumes when the promise is resolved. You can use this to call asynchronous Web APIs from synchronous WebAssembly.
The await keyword, when used at the top level of a module (outside of an async function), delays parent module execution until after a promise fulfills.
The alpha() CSS function computes a relative color value by adjusting the opacity of an origin color.
The light-dark() CSS function accepts, in addition to colors, two <image> values, such as a gradient or URL, and uses one depending on the current color scheme.
The overflow-anchor CSS property sets an element as a possible scroll anchor, reducing unintended scrolling when document changes occur above the current scrollport. This is enabled by default where supported.
The autocorrect global HTML attribute controls whether to automatically correct spelling or punctuation errors for user input.
The 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 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.