Chrome 139 Beta

Veröffentlicht am 25. Juni 2025

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 Links oder in der Liste auf ChromeStatus.com. Chrome 139 ist seit dem 25. Juni 2025 in der Betaversion verfügbar. Sie können die neueste Version für Computer auf Google.com oder für Android-Geräte im Google Play Store herunterladen.

CSS

Mit dieser Version werden sechs neue CSS- und UI-Funktionen eingeführt.

Kurzschluss von var() und attr()

Wenn der Fallback nicht verwendet wird, werden die Funktionen var() und attr() ausgewertet, ohne nach Zyklen in diesem Fallback zu suchen. Das folgende CSS funktioniert, da --green und --blue vorhanden sind.

--green: green;
--blue: blue;
--a: var(--green, var(--b));
--b: var(--blue, var(--a));

CSS-Property caret-animation

Chrome unterstützte bereits die Animation der Property caret-color. Wenn sie animiert wurde, störte jedoch das standardmäßige Blinken des Cursors die Animation. Die CSS-Property caret-animation hat zwei mögliche Werte: auto und manual. auto steht für die Standardeinstellung des Browsers (Blinken) und manual bedeutet, dass der Webentwickler die Cursoranimation steuert. Mit der Property können Nutzer das Blinken auch über ein Nutzer-Stylesheet deaktivieren.

Eckformung

Sie können Ecken zusätzlich zum vorhandenen border-radius gestalten, indem Sie die Form oder Krümmung der Ecke angeben. So lassen sich Formen wie Squircles, Kerben und Aussparungen erstellen und zwischen ihnen animieren. Weitere Informationen finden Sie in diesem Beitrag von Amit Sheen.

Übergänge beim Wechsel zum ursprünglichen Übergangswert fortsetzen

Wenn sich die mit dem Übergang verknüpften Properties ändern, sollten sie sich nur auf neu gestartete Übergänge auswirken. Wenn Sie die Übergangs-Properties ändern, werden die Übergangsanimationen mit der zuvor angegebenen Dauer, dem zuvor angegebenen Easing usw. fortgesetzt, es sei denn, Sie ändern auch die Properties, die aktive Übergangsanimationen haben. Blink hat Übergänge fälschlicherweise abgebrochen, wenn die Übergangs-Property auf „none“ gesetzt war, obwohl sie nicht abgebrochen werden, wenn Sie nur die Übergangsdauer ändern. Mit dieser Funktion ist Blink mit Webkit und Gecko konsistent, sodass aktive Übergänge fortgesetzt werden können, es sei denn, der Property-Wert ändert sich und löst eine neue Übergangsaktualisierung aus.

Benutzerdefinierte CSS-Funktionen

Benutzerdefinierte Funktionen ähneln benutzerdefinierten Properties. Sie geben jedoch keine einzelnen, festen Werte zurück, sondern Werte, die auf anderen benutzerdefinierten Properties, Parametern und Bedingungen basieren.

@function --negate(--value) {
result: calc(var(--value) * -1);
}

div {
--gap: 1em;
margin-top: --negate(var(--gap));
}

width und height als Präsentationsattribute für verschachtelte <svg> Elemente unterstützen

Unterstützt die Anwendung von width und height als Präsentationsattribute für verschachtelte <svg> Elemente sowohl über SVG-Markup als auch über CSS. Dieser duale Ansatz bietet noch mehr Flexibilität und ermöglicht es Ihnen, SVG-Elemente in komplexen Designs effizienter zu verwalten und zu gestalten.

Web APIs

Web-App-Manifest: Aktualisierungsvoraussetzungen angeben, Symbol-URLs sind Cache-Control: immutable

Geben Sie in der Manifest-Spezifikation einen Algorithmus für die Aktualisierungsvoraussetzungen an. Dadurch wird der Aktualisierungsprozess deterministischer und vorhersehbarer. Entwickler haben mehr Kontrolle darüber, ob (und wann) Updates auf vorhandene Installationen angewendet werden sollen. Außerdem kann die Drosselung der Aktualisierungsprüfung entfernt werden, die User-Agents derzeit implementieren müssen, um Netzwerkressourcen nicht zu verschwenden.

Leistungsverbesserungen bei der WebXR-Tiefenerkennung

Es werden mehrere neue Mechanismen eingeführt, mit denen das Verhalten der Tiefenerkennungsfunktion in einer WebXR-Sitzung angepasst werden kann. Ziel ist es, die Leistung bei der Erstellung oder Nutzung des Tiefenpuffers zu verbessern. Die wichtigsten Mechanismen sind: die Möglichkeit, den rohen oder geglätteten Tiefenpuffer anzufordern, die Möglichkeit, anzufordern, dass die Laufzeit die Bereitstellung des Tiefenpuffers beendet oder fortsetzt, und die Möglichkeit, einen Tiefenpuffer bereitzustellen, der nicht genau mit der Ansicht des Nutzers übereinstimmt, sodass der User-Agent nicht bei jedem Frame unnötige Neuprojektionen durchführen muss.

Mehr Zeichen in JavaScript DOM APIs zulassen

Der HTML-Parser hat schon immer (oder seit langer Zeit) zugelassen, dass Elemente und Attribute eine Vielzahl gültiger Zeichen und Namen haben. Die JavaScript DOM APIs, die dieselben Elemente und Attribute erstellen, sind jedoch strenger und stimmen nicht mit dem Parser überein. Mit dieser Änderung wird die Validierung der JavaScript DOM APIs gelockert, damit sie mit dem HTML-Parser übereinstimmt.

request-close-Befehl für Aufrufer

Dialogelemente können auf verschiedene Arten geschlossen werden. Manchmal möchten Entwickler das Schließen verhindern. Dazu lösen Dialoge ein Abbruchereignis aus. Ursprünglich wurde dieses Ereignis nur über eine Schließanfrage ausgelöst (z. B. durch Drücken der Taste Esc). Vor Kurzem wurde die JavaScript-Funktion requestClose() hinzugefügt, die ebenfalls das Abbruchereignis auslöst. Mit dem Befehl request-close wird diese neue Funktion in die deklarative API für Aufruferbefehle eingeführt.

WebGPU: Unterstützung von 3D-Texturen für BC- und ASTC-komprimierte Formate

Die WebGPU-Funktionen texture-compression-bc-sliced-3d und texture-compression-astc-sliced-3d fügen jeweils die Unterstützung von 3D-Texturen für BC- und ASTC-komprimierte Formate hinzu.

Sichere Zahlungsbestätigung: Browsergebundene Schlüssel

Fügt eine zusätzliche kryptografische Signatur für Zusicherungen zur sicheren Zahlungsbestätigung und die Erstellung von Anmeldedaten hinzu. Der entsprechende private Schlüssel wird nicht auf verschiedenen Geräten synchronisiert. So können Webentwickler die Anforderungen für die Gerätebindung bei Zahlungstransaktionen erfüllen.

Sichere Zahlungsbestätigung: UX-Aktualisierung

Aktualisiert die UX-Elemente für den Dialog zur sicheren Zahlungsbestätigung in Chrome für Android. Neben der UX-Präsentation werden folgende Elemente hinzugefügt:

  • Händler können eine optionale Liste von Logos von Zahlungseinheiten bereitstellen, die im Zusammenhang mit der Zahlung angezeigt werden.
  • Je nachdem, ob der Nutzer die Transaktion ohne sichere Zahlungsbestätigung fortsetzen oder abbrechen möchte, werden unterschiedliche Ausgabestatus an den Händler zurückgegeben.
  • Dem Zahlungsinstrument wird ein neues Label für Zahlungsdetails hinzugefügt, damit der Text auf zwei Zeilen präsentiert wird.

WebGPU core-features-and-limits

Die Funktion core-features-and-limits gibt an, dass ein WebGPU-Adapter und ein WebGPU-Gerät die Kernfunktionen und ‑limits der Spezifikation unterstützen.

Korrektur für die Priorität der Scrollverankerung

Derzeit wählt der Algorithmus für die Scrollverankerung Prioritätskandidaten aus, wenn sie als Ankerziele verfügbar sind. Die Prioritätskandidaten sind derzeit ein fokussiertes bearbeitbares Element und In-Page-Hervorhebungen der Suchfunktion. Dies kann zu einer suboptimalen Nutzererfahrung führen, wenn ein großes fokussiertes bearbeitbares Element vorhanden ist, dessen Inhalt außerhalb des Bildschirms geändert wurde (der Cursor wird dadurch verschoben). Mit dieser Korrektur wird der Algorithmus geändert: Anstatt den Prioritätskandidaten als Anker auszuwählen, wird er als Bereich oder Stamm des regulären Algorithmus für die Ankerauswahl verwendet, der das tiefste Element auf dem Bildschirm als Anker auswählt.

Das Attribut async für SVG <script> Elemente unterstützen

Die Schnittstelle SVGScriptElement in SVG 2.0 führt das Attribut async ein, ähnlich wie HTMLScriptElement. Mit diesem Attribut können Skripts asynchron ausgeführt werden, was die Leistung und Reaktionsfähigkeit von Webanwendungen verbessert, die SVG verwenden.

On-Device Web Speech API

Mit dieser Funktion wird der Web Speech API die On-Device-Spracherkennung hinzugefügt. So können Websites dafür sorgen, dass weder Audio noch transkribierte Sprache zur Verarbeitung an einen Drittanbieterdienst gesendet werden. Websites können die Verfügbarkeit der On-Device-Spracherkennung für bestimmte Sprachen abfragen, Nutzer auffordern, die erforderlichen Ressourcen für die On-Device-Spracherkennung zu installieren, und je nach Bedarf zwischen On-Device- oder cloudbasierter Spracherkennung wählen.

window.name für websiteübergreifende Seitenaufrufe löschen, die die Gruppe für den Browserkontext wechseln

Der Wert der Property window.name bleibt derzeit während der gesamten Lebensdauer eines Tabs erhalten, auch bei Seitenaufrufen, die die Gruppe für den Browserkontext wechseln. Dadurch können Informationen weitergegeben werden und die Property kann möglicherweise als Tracking-Vektor verwendet werden. Durch das Löschen der Property window.name wird dieses Problem behoben. Diese Änderung sollte ein geringes Risiko darstellen, da das Suchen nach einem Browserkontext anhand des Namens bereits nicht funktioniert, wenn er sich in einer anderen Gruppe für den Browserkontext befindet. Der Name ist also nicht wirklich nützlich.

Unternehmensrichtlinie: ClearWindowNameCrossSiteBrowsing (funktioniert in Chrome 142 nicht mehr).

Erweiterungen des Web-App-Bereichs

Fügt dem Web-App-Manifest das Feld "scope_extensions" hinzu, mit dem Web-Apps ihren Bereich auf andere Ursprünge ausweiten können.

So können Websites, die mehrere Subdomains und Top-Level-Domains verwalten, als eine einzige Web-App präsentiert werden. Die aufgeführten Ursprünge müssen die Verknüpfung mit der Web-App über eine Konfigurationsdatei .well-known/web-app-origin-association bestätigen.

Spezifikationskonforme Erkennung des JSON-MIME-Typs

Chromium erkennt jetzt alle gültigen JSON-MIME-Typen, wie in der WHATWG-Spezifikation mimesniff definiert. Dazu gehören neben den herkömmlichen Typen application/json und text/json auch alle MIME-Typen, deren Untertyp mit +json endet. Diese Änderung sorgt dafür, dass sich Web APIs und Funktionen, die auf der JSON-Erkennung basieren, konsistent mit dem Webplattformstandard und anderen Browsern verhalten. Ein wichtiger Grund für diese Änderung ist die Korrektur des Verhaltens beim Importieren von JSON-Modulen. Bisher konnten gültige JSON-MIME-Typen wie text/html+json und image/svg+json nicht als Module geladen werden.

Private Aggregation API: Aggregierte Fehlerberichte

Bei der Verwendung der Private Aggregation API können verschiedene Fehlerbedingungen auftreten. Beispielsweise kann das Datenschutzbudget aufgebraucht sein, sodass keine weiteren Histogrammbeiträge möglich sind. Mit dieser Funktion können Entwickler Histogrammbeiträge registrieren, die nur gesendet werden sollen, wenn ein bestimmter Fehlertyp auftritt. Mit dieser Funktion lässt sich die Häufigkeit der Fehlerbedingungen messen und diese Messungen nach relevanten, von Entwicklern angegebenen Dimensionen aufschlüsseln (z.B. Version des bereitgestellten Codes). Da die Fehler selbst websiteübergreifende Informationen enthalten können, können wir sie nicht einfach auf der Seite für Nutzer ohne Drittanbieter-Cookies verfügbar machen. Stattdessen werden mit dieser Funktion die vorhandenen aggregierten, mit Rauschen versehenen Berichtspipelines über den Aggregation Service wiederverwendet.

Crash Reporting API: „crash-reporting“ angeben, um nur Absturzberichte zu erhalten

Mit dieser Funktion erhalten Entwickler nur Absturzberichte, indem sie den Endpunkt crash-reporting angeben. Standardmäßig werden Absturzberichte an den Endpunkt default gesendet, der neben Absturzberichten auch viele andere Arten von Berichten empfängt. Entwickler können eine separate URL für den bekannten Endpunkt crash-reporting angeben, um Absturzberichte dorthin zu senden, anstatt an den Endpunkt default.

Fingerprinting in den Accept-Language-Headerinformationen reduzieren

Reduziert die Menge an Informationen, die der Wertstring des Accept-Language-Headers in HTTP-Anfragen und in navigator.languages preisgibt. Statt bei jeder HTTP-Anfrage mit dem Accept-Language-Header eine vollständige Liste der bevorzugten Sprachen des Nutzers zu senden, senden wir jetzt die bevorzugte Sprache des Nutzers im Accept-Language-Header. Um Kompatibilitätsrisiken zu minimieren, wird beim ersten Start die Menge an Informationen im HTTP-Header reduziert. In Zukunft werden wir die zugehörigen JavaScript-Getter für navigator.languages reduzieren.

Fehlerereignis auslösen, anstatt bei einem von CSP blockierten Worker eine Ausnahme auszulösen

Wenn ein Worker von der Content Security Policy (CSP) blockiert wird, gibt Chrome derzeit einen SecurityError aus dem Konstruktor von Worker und SharedWorker aus. Gemäß der Spezifikation muss die CSP im Rahmen des Abrufs geprüft werden und Fehlerereignisse werden asynchron ausgelöst, anstatt eine Ausnahme auszulösen, wenn ein Skript new Worker(url) oder new SharedWorker(url) ausführt. Mit dieser Änderung wird Chrome spezifikationskonform: Es wird keine Ausnahme während des Konstruktors ausgelöst und Fehlerereignisse werden asynchron ausgelöst.

Audiopegel für RTC-codierte Frames

Macht den Audiopegel eines codierten Frames, der mit RTCPeerConnection übertragen und mit WebRTC Encoded Transform verfügbar gemacht wird, für das Web verfügbar.

Neue Ursprungstests

In Chrome 139 können Sie an den folgenden neuen Ursprungstests teilnehmen.

Prompt API

Die Prompt API wurde für die Interaktion mit einem KI Sprachmodell mithilfe von Text-, Bild- und Audioeingaben entwickelt. Sie unterstützt verschiedene Anwendungsfälle, von der Generierung von Bildunterschriften und der visuellen Suche bis hin zur Transkription von Audio, der Klassifizierung von Soundereignissen, der Generierung von Text nach bestimmten Anweisungen und der Extraktion von Informationen oder Erkenntnissen aus Text. Sie unterstützt strukturierte Ausgaben, die dafür sorgen, dass Antworten einem vordefinierten Format entsprechen, das in der Regel als JSON-Schema ausgedrückt wird. So wird die Konformität der Antworten verbessert und die nahtlose Integration in nachgelagerte Anwendungen erleichtert, die standardisierte Ausgabeformate erfordern. Diese API ist auch in Chrome-Erweiterungen verfügbar. Dieser Ursprungstest ist für die Nutzung im Web vorgesehen.

Attribut zum Blockieren des Renderings mit voller Framerate

Wir schlagen vor, den Blockierungsattributen ein neues Token zum Blockieren des Renderings mit voller Framerate hinzuzufügen. Wenn der Renderer mit dem Token zum Blockieren des Renderings mit voller Framerate blockiert wird, arbeitet er mit einer niedrigeren Framerate, um mehr Ressourcen für das Laden zu reservieren.

WebGPU-Kompatibilitätsmodus

Fügt ein optionales, leicht eingeschränktes Subset der WebGPU API hinzu, mit dem ältere Grafik-APIs wie OpenGL und Direct3D11 ausgeführt werden können. Wenn Entwickler diesen Modus aktivieren und die Einschränkungen beachten, können sie die Reichweite ihrer WebGPU-Anwendungen auf viele ältere Geräte ausweiten, die nicht über die modernen, expliziten Grafik-APIs verfügen, die für WebGPU erforderlich sind. Für einfache Anwendungen besteht die einzige erforderliche Änderung darin, beim Aufrufen von requestAdapter die Funktionsebene "compatibility" anzugeben. Für komplexere Anwendungen sind möglicherweise einige Änderungen erforderlich, um die Einschränkungen des Modus zu berücksichtigen. Da der Kompatibilitätsmodus ein Subset ist, sind die resultierenden Anwendungen auch gültige WebGPU Core-Anwendungen und können auch auf User-Agents ausgeführt werden, die den Kompatibilitätsmodus nicht unterstützen.

Einstellung und Entfernung

In dieser Version von Chrome werden die unten aufgeführten Funktionen eingestellt und entfernt. Auf ChromeStatus.com finden Sie Listen mit geplanten Einstellungen, aktuellen Einstellungen und früheren Entfernungen.

Mit dieser Version von Chrome werden zwei Funktionen entfernt.

Unterstützung für macOS 11 entfernen

Chrome 138 ist die letzte Version, die macOS 11 unterstützt. Ab Chrome 139 wird macOS 11 nicht mehr unterstützt, da es sich außerhalb des Supportfensters von Apple befindet. Die Ausführung auf einem unterstützten Betriebssystem ist wichtig, um die Sicherheit zu gewährleisten. Auf Macs mit macOS 11 funktioniert Chrome weiterhin und zeigt eine Warnung in der Infoleiste an, wird aber nicht mehr aktualisiert. Wenn ein Nutzer Chrome aktualisieren möchte, muss er seinen Computer auf eine unterstützte Version von macOS aktualisieren. Für neue Installationen von Chrome 139 und höher ist macOS 12 oder höher erforderlich.

Automatische Erkennung des Zeichensatzes ISO-2022-JP in HTML entfernen

Es gibt bekannte Sicherheitsprobleme bei der automatischen Erkennung des Charsets für ISO-2022-JP. Da die Nutzung sehr gering ist und Safari die automatische Erkennung von ISO-2022-JP nicht unterstützt, wird die Unterstützung in Chrome entfernt, um die Sicherheitsprobleme zu beheben.