Web platform features explorer

📃 April 2026 release notes

Newly available

The following features are newly available:

  • contrast-color(): The contrast-color() CSS function picks a color that has guaranteed contrast against a specified foreground or background color.
  • Math.sumPrecise(): 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.

Widely available

The following features are now widely available:

  • ARIA attribute reflection: WAI-ARIA attributes have corresponding properties on Element and ElementInternals objects.
  • <search>: The <search> HTML element is a container that represents the parts of the web page with search functionality.
  • String isWellFormed() and toWellFormed(): The isWellFormed() method of strings returns a boolean indicating if the string contains any Unicode lone surrogates. The toWellFormed() method returns a new string where all lone surrogates are replaced by the Unicode replacement character.

New in Chrome

The following features are now available in Chrome:

  • border-shape: The border-shape CSS property sets the geometry of the border box, changing the shape of any applicable border, border image, focus outline, or shadow.
  • Element-scoped view transitions: The startViewTransition() method of an Element object starts a view transition that affects only that element's DOM tree. You can use this to run separate elements' transitions concurrently.
  • Layers (WebXR): WebXR layer types, such as XRCylinderLayer, XRCylinderLayer, XREquirectLayer, XRProjectionLayer or XRQuadLayer, are managed by the system compositor, to reduce latency or resampling.

New in Chrome Android

The following features are now available in Chrome Android:

  • border-shape: The border-shape CSS property sets the geometry of the border box, changing the shape of any applicable border, border image, focus outline, or shadow.
  • Element-scoped view transitions: The startViewTransition() method of an Element object starts a view transition that affects only that element's DOM tree. You can use this to run separate elements' transitions concurrently.
  • Layers (WebXR): WebXR layer types, such as XRCylinderLayer, XRCylinderLayer, XREquirectLayer, XRProjectionLayer or XRQuadLayer, are managed by the system compositor, to reduce latency or resampling.

New in Edge

The following features are now available in Edge:

  • border-shape: The border-shape CSS property sets the geometry of the border box, changing the shape of any applicable border, border image, focus outline, or shadow.
  • Element-scoped view transitions: The startViewTransition() method of an Element object starts a view transition that affects only that element's DOM tree. You can use this to run separate elements' transitions concurrently.
  • Layers (WebXR): WebXR layer types, such as XRCylinderLayer, XRCylinderLayer, XREquirectLayer, XRProjectionLayer or XRQuadLayer, are managed by the system compositor, to reduce latency or resampling.

New in Firefox

The following features are now available in Firefox:

  • ariaNotify(): The ariaNotify() method of Element and Document requests assistive technology software, if activated, to announce a message to the user. This can help make dynamic content changes more accessible to users.
  • Custom highlights from point: The CSS.highlights.highlightsFromPoint() method returns an array of Highlight objects at a specified point.
  • light-dark() image values: 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.
  • Media element pseudo-classes: The :playing, :paused, :seeking, :buffering, :stalled, :muted, and :volume-locked CSS pseudo-classes match <audio> and <video> elements based on their state.
  • overscroll-behavior: The overscroll-behavior CSS property disables default scrolling behaviors when the edges of a scrolling area are reached.
  • <img sizes="auto" loading="lazy">: The sizes="auto" attribute for the <img> HTML element sets the layout size for the image based on the computed layout size when choosing a source from the srcset. This attribute only applies to images with the loading="lazy" attribute.

New in Firefox for Android

The following features are now available in Firefox for Android:

  • ariaNotify(): The ariaNotify() method of Element and Document requests assistive technology software, if activated, to announce a message to the user. This can help make dynamic content changes more accessible to users.
  • Custom highlights from point: The CSS.highlights.highlightsFromPoint() method returns an array of Highlight objects at a specified point.
  • light-dark() image values: 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.
  • Media element pseudo-classes: The :playing, :paused, :seeking, :buffering, :stalled, :muted, and :volume-locked CSS pseudo-classes match <audio> and <video> elements based on their state.
  • overscroll-behavior: The overscroll-behavior CSS property disables default scrolling behaviors when the edges of a scrolling area are reached.
  • <img sizes="auto" loading="lazy">: The sizes="auto" attribute for the <img> HTML element sets the layout size for the image based on the computed layout size when choosing a source from the srcset. This attribute only applies to images with the loading="lazy" attribute.