CSS

CSS position-visibility:anchor{s}-valid Link copied!

The anchors-valid value was implemented as part of https://crbug.com/329703412 but subsequently reverted, due to spec questions about the exact definition of the value. Since that time, the value has been renamed to anchor-valid (see https://chromestatus.com/feature/5136123851571200) and also better defined to be clear that only the default anchor matters, resolving a lot of ambiguity, and making this value shippable.

Ship anchor-visible and anchor-valid, and deprecate the plural versions Link copied!

The CSSWG resolved to rename anchors-valid --> anchor-valid [1] and anchors-visible --> anchor-visible [2]. To accomplish this, we'll rename the properties to the singular variants, and add aliases from the plural versions to the singular versions. At a later date, we will remove the plural variants. This chromestatus is only about shipping the new versions, and deprecating the old ones (but not removing them).

[1] https://github.com/w3c/csswg-drafts/issues/10201#issuecomment-4180411971 [2] https://github.com/w3c/csswg-drafts/issues/10201#issuecomment-4390233490

object-fit and object-position apply to SVG documents in <object> and <embed> Link copied!

SVG documents loaded through <object> or <embed> are sized and positioned inside the element's content box according to the CSS object-fit and object-position properties, the same way <img> content is.

Previously Chrome ignored both properties for embedded SVG documents and always stretched the document viewport to the whole content box.

Miscellaneous

Disallow spaces in non-file:// URL hosts Link copied!

According to the URL Standard specification, URL hosts cannot contain the space character, but currently URL parsing in Chromium allows spaces in the host. This causes Chromium to fail several tests included in the Interop2024 HTTPS URLs for WebSocket and URL focus areas. To bring Chromium into spec compliance, we would like to remove spaces from URL hosts altogether, but a difficulty with this is that they are used in the host part in Windows file:// URLs. For more details, see this Github discussion.

Disconnect WebSockets on BFCache entry Link copied!

Chrome is changing its behavior to allow pages with active WebSocket connections to enter the Back/Forward Cache. To achieve this, active WebSockets are now disconnected when a page is cached. Previously, active WebSocket connections prevented pages from entering BFCache.

To revert to the previous behavior (preventing pages with active WebSockets from entering BFCache), we've provided a BackForwardCacheForWebSocketsAllowed policy. Admins can set this policy to Disabled , which will prevent breakage in legacy apps that lack WebSocket reconnection logic.

For more information on BFCache, see Test back/forward cache.

Graphics

Enhanced Canvas TextMetrics Link copied!

Expand the TextMetrics Canvas API to support selection rectangles, bounding box queries, and glyph cluster-based operations.

This new functionality should enable complex text editing applications with accurate selection, caret positioning, and hit testing. Additionally, cluster-based rendering facilitates sophisticated text effects such as independent character animations and styling.

DOM

Renewed HTML insertion&streaming methods Link copied!

Expose multiple HTML setting methods that provide a coherent story for dynamically inserting markup into an existing document.

  • Positional methods (before/after/append/prepend/replaceWith) that take HTML as argument, effectively replacing insertAdjacentHTML.
  • Streaming methods (stream{Append}HTML{Unsafe}) which return a WritableStream
  • Passing {runScripts} as part of SetHTMLUnsafeOptions, mimicking createContextualFragment behavior.
  • Supporting createParserOptions in trusted types, allowing trusted types to override scripting mode and sanitizer.

Network / Connectivity