Chrome 131-Beta

Veröffentlicht: 16. Oktober 2024

Sofern nicht anders angegeben, gelten die folgenden Änderungen für die neueste Chrome-Betaversion für Android, ChromeOS, Linux, macOS und Windows. Weitere Informationen zu den hier aufgeführten Funktionen finden Sie über die bereitgestellten Links oder in der Liste auf ChromeStatus.com. Chrome 131 ist seit dem 16. Oktober 2024 als Betaversion verfügbar. Sie können die aktuelle Version für Computer auf Google.com oder für Android im Google Play Store herunterladen.

CSS

In dieser Version werden acht neue CSS-Funktionen eingeführt.

CSS Anchor Positioning: anchor-scope

Mit der Eigenschaft anchor-scope lässt sich die Sichtbarkeit von Ankernamen auf einen bestimmten Teilbaum beschränken.

​Preisvergleichsportal font-variant-emoji

Mit der CSS-Eigenschaft font-variant-emoji können Sie zwischen farbigen (Emoji-Stil) und monochromen (Textstil) Emoji-Glyphen wechseln. Dies kann auch durch Hinzufügen eines Emoji-Variationsselektors nach jedem Emoji-Codepunkt erfolgen, insbesondere U+FE0E für Text und U+FE0F für Emojis.

CSS-Highlight übernehmen

Mit der Funktion „CSS-Highlight übernehmen“ werden die Eigenschaften der CSS-Highlight-Pseudoklassen wie ::selection und ::highlight über die Pseudo-Highlight-Kette und nicht über die Elementkette übernommen. Das Ergebnis ist ein intuitiveres Modell für die Übernahme von Eigenschaften in Hervorhebungen.

Weitere Informationen finden Sie im Blogpost Inheritance changes for CSS selection styling von Stephen Chenney von Igalia.

Verbesserungen an der Formatstruktur der Elemente <details> und <summary>

Es wird mehr CSS-Styling für die Struktur der Elemente <details> und <summary> unterstützt, damit diese Elemente in mehr Fällen verwendet werden können, in denen Offenlegungs- oder Akkordeon-Widgets im Web erstellt werden. Insbesondere werden durch diese Änderung Einschränkungen aufgehoben, die das Festlegen der Eigenschaft „display“ für diese Elemente verhindert haben. Außerdem wird das Pseudo-Element ::details-content hinzugefügt, um den Container für den Teil zu formatieren, der maximiert und minimiert werden kann.

@page Randkästen

Unterstützung für Seitenrandfelder beim Drucken eines Webdokuments oder beim Exportieren als PDF hinzufügen.

Mit den @page-Rahmen können Sie den Inhalt im Randbereich einer Seite definieren, z. B. um benutzerdefinierte Kopf- und Fußzeilen zu erstellen, anstatt die integrierten Kopf- und Fußzeilen zu verwenden, die vom Browser generiert werden.

Ein Margin-Feld wird mit einer At-Regel in einer CSS-@page-Regel definiert. Das Erscheinungsbild und der Inhalt eines Randbereichs werden mit CSS-Eigenschaften innerhalb der @-Regel angegeben, einschließlich der content-Eigenschaft. Auch Zähler für die Seitennummerierung werden unterstützt. In der Spezifikation werden zwei spezielle Zählernamen definiert: page für die aktuelle Seitenzahl und pages für die Gesamtzahl der Seiten.

Unterstützung der <string>-Syntax für @property

Unterstützung des Namens der <string>-Syntaxkomponente für registrierte benutzerdefinierte Eigenschaften.

„currentcolor“ in der relativen Farbsyntax unterstützen

Ermöglicht die Verwendung von relativen Farben in CSS (mit dem Keyword from) mit currentcolor als Grundlage. So können Sie basierend auf der Textfarbe eines Elements Komplementärfarben für die Rahmen, Schatten oder Hintergründe dieses Elements festlegen.

Diese Funktion umfasst auch Anwendungsfälle, in denen Farbfunktionen mit einer Abhängigkeit von „currentcolor“ verschachtelt sind, z. B. color-mix(in srgb, rgb(from currentcolor r g b), white)) oder rgb(from rgb(from currentcolor 1 g b) b g r).

Unterstützung externer SVG-Ressourcen für die Attribute clip-path, fill, stroke und marker-*

Mit diesem Feature werden externe Referenzen für Clippfade, Markierungen und Paint-Server (für die Attribute „fill“ und „stroke“) unterstützt. Beispiel: clip-path: url("resources.svg#myPath")

Web APIs

Direct Sockets API

Ermöglicht es isolierten Web-Apps, direkte TCP- (Transmission Control Protocol) und UDP-Verbindungen (User Datagram Protocol) mit Netzwerkgeräten und ‑systemen herzustellen sowie eingehende Verbindungen zu überwachen und anzunehmen.

Speculation-Rules-Header von CSP-Einschränkungen ausnehmen

Aktualisiert die Integration zwischen Spekulationsregeln und CSP, sodass CSP nur für <script type=speculationrules> und nicht für den Speculation-Rules-Header gilt. Die Script-Richtlinien von CSP sollen vor dem Einfügen von Scripts in HTML schützen. Das CSP-Bedrohungsmodell bezieht sich nicht auf HTTP-Header. Dadurch lassen sich Spekulationsregeln einfacher von CDNs und anderen Edge-Servern bereitstellen.

FedCM als Vertrauenssignal für die Storage Access API

Die FedCM API und die Storage Access API werden insofern in Einklang gebracht, als eine vorherige FedCM-Gewährung ein gültiger Grund für die automatische Genehmigung einer Storage Access-Anfrage ist.

Wenn ein Nutzer einer vertrauenden Partei (Relying Party, RP) die Berechtigung erteilt, seine Identität mit einem externen Identitätsanbieter (Identity Provider, IdP) zu verwenden, benötigen viele IdPs Drittanbieter-Cookies, damit sie richtig und sicher funktionieren. Mit diesem Vorschlag soll diese Anforderung auf private und sichere Weise erfüllt werden, indem die Berechtigungsprüfungen der Storage Access API (SAA) aktualisiert werden, sodass nicht nur die Berechtigung, die durch eine Aufforderung zum Speicherzugriff erteilt wird, sondern auch die Berechtigung, die durch eine FedCM-Aufforderung erteilt wird, akzeptiert wird.

Ein wichtiges Merkmal dieses Mechanismus ist die Beschränkung der Gewährung auf Fälle, die vom RP mit der FedCM-Berechtigungsrichtlinie explizit erlaubt werden. So wird eine Steuerung pro Frame für den RP erzwungen und eine passive Überwachung durch den IdP über die bereits von FedCM gewährten Möglichkeiten hinaus verhindert.

COOP-Wert noopener-allow-popups

Einige Ursprünge können verschiedene Anwendungen mit unterschiedlichen Sicherheitsanforderungen enthalten. In solchen Fällen kann es sinnvoll sein, zu verhindern, dass Skripts, die in einer Anwendung ausgeführt werden, Seiten einer anderen Anwendung mit demselben Ursprung öffnen und skripten können.

In solchen Fällen kann es von Vorteil sein, wenn ein Dokument dafür sorgt, dass es nicht geskriptet werden kann, auch wenn das öffnende Dokument denselben Ursprung hat. Mit dem Wert noopener-allow-popups für Cross-Origin-Opener-Policy können Dokumente dieses Verhalten definieren.

Private Aggregation API: Beitragslimit für Protected Audience-Aufrufer auf 100 erhöht

Ermöglicht es Protected Audience-Skript-Runnern, bis zu 100 Beiträge pro Private Aggregation-Bericht zu leisten, im Vergleich zum aktuellen Limit von 20.

Bei der privaten Aggregation wird die Anzahl der Histogrammbeiträge begrenzt, die in einen einzelnen aggregierbaren Bericht eingebettet werden können. Alle zusätzlichen Beiträge werden verworfen. Aufrufer von Shared Storage können das Limit umgehen, indem sie einen anderen Shared Storage-Vorgang aufrufen. Protected Audience-Aufrufer haben jedoch keinen persistenten Speicher. Daher gehen ihre zusätzlichen Beiträge am Ende der Auktion verloren. Diese Änderung ist datenschutzneutral, da die Beiträge der API weiterhin durch dasselbe Datenschutzbudget begrenzt werden.

Aufgrund des Padding hat jeder Protected Audience-Bericht eine größere Nutzlast, auch wenn das höhere Beitragslimit nicht erforderlich war. Wir gehen davon aus, dass diese größeren Berichte die Kosten für den Betrieb des Aggregationsdienstes erhöhen werden.

Parser-Lockerung auswählen

Durch diese Änderung erlaubt der HTML-Parser neben <option>, <optgroup> und <hr> auch zusätzliche Tags in <select>.

Diese Änderung dient der Unterstützung der anpassbaren Funktion <select>, wird aber zuerst eingeführt, da sie separat durchgeführt werden kann und einige Risiken birgt, zu denen das Chrome-Team gerne Feedback erhalten würde.

WebGPU: Clip-Entfernungen

Fügt das optionale GPU-Feature clip-distances hinzu, mit dem benutzerdefinierte Clip-Distanzen in Vertex-Shader-Ausgaben festgelegt werden können. Diese Technik ist besonders nützlich für Anwendungen, bei denen alle Eckpunkte einer Szene, die über eine benutzerdefinierte Ebene hinausgehen, abgeschnitten werden müssen, z. B. bei vielen CAD-Anwendungen.

WebGPU: GPUCanvasContext getConfiguration()

Nachdem GPUCanvasContext configure() mit einem Konfigurations-Dictionary aufgerufen wurde, können Sie die Methode GPUCanvasContext getConfiguration() verwenden, um die Canvas-Kontextkonfiguration zu prüfen. Dazu gehören die GPU-Mitglieder device, format, usage, viewFormats, colorSpace, toneMapping und alphaMode. Wie in Problem 4828 beschrieben, können Web-Apps damit erkennen, ob HDR-Canvas in WebGPU unterstützt wird.

WebHID in dedizierten Workern

Aktiviert WebHID in dedizierten Worker-Kontexten. So können Sie E/A-intensive Vorgänge und die Verarbeitung von Daten von einem HID-Gerät in einem separaten Thread ausführen und so die Auswirkungen auf die Leistung des Hauptthreads reduzieren.

WebRTC RTCRtpEncodingParameters.scaleResolutionDownTo

Eine API, die WebRTC-Encoder so konfiguriert, dass Eingabe-Frames skaliert werden, wenn sie größer als die angegebenen maxWidth und maxHeight sind. Diese API ähnelt scaleResolutionDownBy. Die Auflösungsbeschränkungen werden jedoch in absoluten Begriffen (z. B. 640 × 360) anstelle von relativen Begriffen (z. B. um den Faktor 2 verkleinern) ausgedrückt. So werden Race-Bedingungen vermieden, die mit der dynamischen Änderung der Eingabe-Framegröße zusammenhängen.

Neue Ursprungstests

In Chrome 131 können Sie die folgenden neuen Ursprungstests aktivieren.

Wiedergabestatistiken für WebAudio

Mit der Funktion AudioContext.playoutStats kann eine Anwendung die Qualität und Latenz der Audioausgabe mit WebAudio messen.

Summarizer API

Eine JavaScript API zum Erstellen von Zusammenfassungen von Eingabetext, die von einem KI-Sprachmodell unterstützt wird.

Einstellung und Entfernung

In dieser Version von Chrome werden die folgenden Einstellungen eingeführt und entfernt. Auf ChromeStatus.com finden Sie Listen mit geplanten, aktuellen und früheren Entfernungen.

In dieser Version von Chrome wurden drei Funktionen entfernt.

Entfernen Sie die CSS Anchor Positioning-Eigenschaft inset-area.

Mit dem Beschluss der CSS Working Group, die inset-area-Property in position-area umzubenennen, wird die Implementierung in Chromium für eine standardkonforme Funktion bereinigt.

Möglichkeit zum Deaktivieren von BeforeunloadEventCancelByPreventDefault entfernen

Die Funktion BeforeunloadEventCancelByPreventDefault wurde in Chrome 117 eingeführt. Es gibt jedoch eine Unternehmensrichtlinie, mit der dieses Flag erzwungen deaktiviert werden kann. Die Unternehmensrichtlinie wird in Chrome 131 entfernt.

Entfernung der nicht standardmäßigen GPUAdapter-Methode „requestAdapterInfo()

Die WebGPU-Arbeitsgruppe hat entschieden, dass es unpraktisch ist, wenn requestAdapterInfo() eine Berechtigungsaufforderung auslöst. Daher wurde diese Option entfernt und durch das GPUAdapter-Attribut info ersetzt. So können Webentwickler denselben GPUAdapterInfo-Wert jetzt synchron abrufen.