Web platform features explorer

📃 April 2024 release notes

Newly available

The following features are newly available:

  • align-content in block layouts: The align-content property vertically aligns content in block layouts, like it does in flex or grid layouts.
  • Intl.Segmenter: The Intl.Segmenter API creates a locale-aware text splitter that can separate a string into meaningful graphemes, words, or sentences.
  • transform-box: The transform-box CSS property sets the position and dimensions of the reference box relative to which an element's transformations are calculated.
  • Vertical form controls: The writing-mode CSS property orients form elements (such as radio buttons, progress bars, or select menus) vertically when the writing mode is vertical-lr or vertical-rl. The direction CSS property sets whether inputs flow from top to bottom or bottom to top.

Widely available

The following features are now widely available:

  • image-rendering: The image-rendering CSS property sets how images are scaled, retaining smoothness for photos, or hard edges for pixel art and QR codes.
  • Navigation timing: The navigation performance entry and the PerformanceNavigationTiming API measures navigation events, such as loading time or the number of redirects.
  • Bulk memory operations (WebAssembly): Bulk memory operations, such as copy and init, mirror the efficiency of native memcpy and memmove operations.
  • Non-trapping float-to-int conversion (WebAssembly): Saturating floating-point to integer conversion operators return the maximum or minimum integer value on overflow instead of trapping.

New in Chrome

The following features are now available in Chrome:

  • Asynchronously iterable streams: Asynchronous iteration of a stream allows you to use for await … of loops to iterate through a stream's incoming data.
  • SVG clipboard items: The image/svg+xml data type (also known as the MIME type) for ClipboardItem objects represents SVG data written to or read from the clipboard.
  • context-fill and context-stroke: The context-fill and context-stroke CSS values are used with fill and stroke in SVG <marker> or <use> elements to match a color from where they appear.
  • Inert elements: The inert HTML attribute marks an element and its descendants as non-interactive. Inert elements don't get focus or fire click events.
  • <link rel="expect">: The rel="expect" attribute for the <link> HTML element is a hint to the browser to block rendering until the element that the href value references is connected to the document and fully parsed.
  • Unsanitized HTML parsing methods: The Document.parseHTMLUnsafe() static method parses HTML into a DOM tree, while the setHTMLUnsafe() method of Element and ShadowRoot parses and inserts HTML into an existing tree. No sanitization applies to these methods, so never call them with user-provided HTML strings.
  • Private network access: The Access-Control-Request-Private-Network: true and Access-Control-Allow-Private-Network: true HTTP request and response headers establish permission for websites to make requests to internal networks, such as to routers.
  • View transitions: View transitions allow you to create animated visual transitions between different states of a document.
  • writingsuggestions: The writingsuggestions HTML attribute turns on or off a browser's writing suggestions. Writing suggestions vary by browser. For example, if turned on then a browser might show inline text completions accepted by pressing Tab.

New in Chrome Android

The following features are now available in Chrome Android:

  • Asynchronously iterable streams: Asynchronous iteration of a stream allows you to use for await … of loops to iterate through a stream's incoming data.
  • SVG clipboard items: The image/svg+xml data type (also known as the MIME type) for ClipboardItem objects represents SVG data written to or read from the clipboard.
  • context-fill and context-stroke: The context-fill and context-stroke CSS values are used with fill and stroke in SVG <marker> or <use> elements to match a color from where they appear.
  • Inert elements: The inert HTML attribute marks an element and its descendants as non-interactive. Inert elements don't get focus or fire click events.
  • <link rel="expect">: The rel="expect" attribute for the <link> HTML element is a hint to the browser to block rendering until the element that the href value references is connected to the document and fully parsed.
  • Unsanitized HTML parsing methods: The Document.parseHTMLUnsafe() static method parses HTML into a DOM tree, while the setHTMLUnsafe() method of Element and ShadowRoot parses and inserts HTML into an existing tree. No sanitization applies to these methods, so never call them with user-provided HTML strings.
  • Private network access: The Access-Control-Request-Private-Network: true and Access-Control-Allow-Private-Network: true HTTP request and response headers establish permission for websites to make requests to internal networks, such as to routers.
  • View transitions: View transitions allow you to create animated visual transitions between different states of a document.
  • writingsuggestions: The writingsuggestions HTML attribute turns on or off a browser's writing suggestions. Writing suggestions vary by browser. For example, if turned on then a browser might show inline text completions accepted by pressing Tab.

New in Edge

The following features are now available in Edge:

  • Asynchronously iterable streams: Asynchronous iteration of a stream allows you to use for await … of loops to iterate through a stream's incoming data.
  • SVG clipboard items: The image/svg+xml data type (also known as the MIME type) for ClipboardItem objects represents SVG data written to or read from the clipboard.
  • context-fill and context-stroke: The context-fill and context-stroke CSS values are used with fill and stroke in SVG <marker> or <use> elements to match a color from where they appear.
  • Inert elements: The inert HTML attribute marks an element and its descendants as non-interactive. Inert elements don't get focus or fire click events.
  • <link rel="expect">: The rel="expect" attribute for the <link> HTML element is a hint to the browser to block rendering until the element that the href value references is connected to the document and fully parsed.
  • Unsanitized HTML parsing methods: The Document.parseHTMLUnsafe() static method parses HTML into a DOM tree, while the setHTMLUnsafe() method of Element and ShadowRoot parses and inserts HTML into an existing tree. No sanitization applies to these methods, so never call them with user-provided HTML strings.
  • Private network access: The Access-Control-Request-Private-Network: true and Access-Control-Allow-Private-Network: true HTTP request and response headers establish permission for websites to make requests to internal networks, such as to routers.
  • View transitions: View transitions allow you to create animated visual transitions between different states of a document.
  • writingsuggestions: The writingsuggestions HTML attribute turns on or off a browser's writing suggestions. Writing suggestions vary by browser. For example, if turned on then a browser might show inline text completions accepted by pressing Tab.

New in Firefox

The following features are now available in Firefox:

  • contextlost and contextrestored: The contextlost event for <canvas> fires when the canvas backing storage is lost, while the contextrestored event fires when it is recreated.
  • Popover: The popover HTML attribute creates an overlay to display content on top of other page content. Popovers can be shown declaratively using HTML, or using the showPopover() method.
  • Multi-memory (WebAssembly): A single module in WebAssembly can have multiple memories.

New in Firefox for Android

The following features are now available in Firefox for Android:

  • contextlost and contextrestored: The contextlost event for <canvas> fires when the canvas backing storage is lost, while the contextrestored event fires when it is recreated.
  • Popover: The popover HTML attribute creates an overlay to display content on top of other page content. Popovers can be shown declaratively using HTML, or using the showPopover() method.
  • Multi-memory (WebAssembly): A single module in WebAssembly can have multiple memories.