Chrome 140

Datum der stabilen Version:2. September 2025

Sofern nicht anders angegeben, gelten die folgenden Änderungen für die stabile Version von Chrome 140 für Android, ChromeOS, Linux, macOS und Windows.

CSS

Typisierte Arithmetik in CSS

Mit der typisierten Arithmetik können Sie Ausdrücke in CSS schreiben, z. B. calc(10em / 1px) oder calc(20% / 0.5em * 1px). Das ist beispielsweise in der Typografie nützlich, da Sie damit einen typisierten Wert in einen untypisierten Wert umwandeln und für Eigenschaften wiederverwenden können, die Zahlen akzeptieren. Ein weiterer Anwendungsfall ist die Multiplikation des einheitenlosen Werts mit einem anderen Typ. Sie können jetzt beispielsweise von Pixeln in Grad umrechnen.

Tracking-Fehler 40768696 | ChromeStatus.com-Eintrag | Spezifikation

CSS-Property caret-animation

Chromium unterstützt die Animation des Attributs caret-color. Bei Animationen stört das standardmäßige Blinken des Cursors jedoch die Animation.

Die CSS-Property caret-animation hat zwei mögliche Werte: auto und manual. auto bedeutet Browserstandard (blinkend) und manual bedeutet, dass der Entwickler die Cursoranimation steuert. Nutzer, die durch blinkende oder flackernde Bilder gestört werden oder darauf mit unerwünschten Reaktionen reagieren, können das Blinken mit einem benutzerdefinierten Stylesheet deaktivieren.

Tracking-Fehler 329301988 | ChromeStatus.com-Eintrag | Spezifikation

highlightsFromPoint API

Mit der highlightsFromPoint API können Entwickler mit benutzerdefinierten Highlights interagieren. Es wird erkannt, welche Markierungen an einer bestimmten Stelle in einem Dokument vorhanden sind. Diese Interaktivität ist für komplexe Webfunktionen nützlich, bei denen sich mehrere Hervorhebungen überschneiden oder im Shadow DOM vorhanden sein können. Die API bietet eine präzise punktbasierte Hervorhebungserkennung und ermöglicht es Entwicklern, dynamische Interaktionen mit benutzerdefinierten Hervorhebungen effektiver zu verwalten. Entwickler können beispielsweise auf Nutzerklicks oder Hover-Ereignisse in hervorgehobenen Bereichen reagieren, um benutzerdefinierte Tooltips, Kontextmenüs oder andere interaktive Funktionen auszulösen.

Tracking-Fehler 365046212 | ChromeStatus.com-Eintrag | Spezifikation

Containeroption ScrollIntoView

Mit der Containeroption ScrollIntoViewOptions können Entwickler einen scrollIntoView-Vorgang ausführen, bei dem nur der nächste übergeordnete Scrollcontainer gescrollt wird. Im folgenden Beispiel wird nur der Scrollcontainer von target gescrollt, um target in den sichtbaren Bereich zu bringen. Es werden jedoch nicht alle Scrollcontainer in den Darstellungsbereich gescrollt:

target.scrollIntoView({container: 'nearest'});

ChromeStatus.com-Eintrag | Spezifikation

Übergänge ansehen: Weitere Animationseigenschaften übernehmen

Fügt weitere Animationsattribute hinzu, die über den Pseudo-Baum für den Ansichtsübergang übernommen werden sollen:

  • animation-timing-function
  • animation-iteration-count
  • animation-direction
  • animation-play-state

Tracking bug #427741151 | ChromeStatus.com entry | Spec

Pseudoelemente für Übergänge erben „animation-delay“.

Zusätzlich zum vorherigen Update wird das Attribut animation-delay jetzt über den Pseudo-Baum für Ansichtsübergänge vererbt.

ChromeStatus.com-Eintrag | Spezifikation

Verschachtelte Gruppen für Ansichtsübergänge

Mit dieser Funktion kann ein verschachtelter Pseudo-Elementbaum anstelle eines flachen Baums generiert werden. So wirkt der Übergang der Ansicht stimmiger in Bezug auf die ursprünglichen Elemente und die visuelle Intention. Damit sind Clipping, verschachtelte 3D-Transformationen und die korrekte Anwendung von Effekten wie Deckkraft, Maskierung und Filtern möglich.

Tracking-Fehler 399431227 | ChromeStatus.com-Eintrag | Spezifikation

Darstellungsbereich overscroll-behavior aus dem Stamm weitergeben

Mit dieser Änderung wird overscroll-behavior vom root-Element anstelle des body-Elements übernommen.

Die CSSWG (CSS Working Group) hat beschlossen, Eigenschaften nicht vom <body>-Element zum Viewport zu übertragen. Stattdessen werden Eigenschaften des Viewports vom root-Element (<html>) weitergegeben. Daher sollte overscroll-behavior vom Stammelement weitergegeben werden. In Chrome gibt es jedoch schon seit Langem das Problem, dass overscroll-behavior vom <body>- anstelle des Root-Elements weitergegeben wird. Dieses Verhalten ist nicht mit anderen Browsern kompatibel. Durch diese Änderung entspricht Chrome der Spezifikation und ist mit anderen Implementierungen kompatibel.

Tracking-Fehler #41453796 | ChromeStatus.com-Eintrag | Spezifikation

CSS-counter() und counters() im Alt-Text der Property content

Mit dieser Funktion können Sie counter() und counters() im Alternativtext der content-Property verwenden. So erhalten Sie aussagekräftigere Informationen zur Verbesserung der Barrierefreiheit.

Tracking bug #417488055 | ChromeStatus.com entry | Spec

CSS-Property scroll-target-group

Die Eigenschaft scroll-target-group gibt an, ob das Element ein Container für Scrollmarkierungsgruppen ist. Es akzeptiert einen der folgenden Werte:

  • „none“: Das Element ist kein Container für eine Scrollmarkierungsgruppe.
  • „auto“: Das Element richtet einen Container für die Scrollmarkierungsgruppe ein, der eine Scrollmarkierungsgruppe mit allen Scrollmarkierungselementen enthält, für die dies der nächstgelegene Container für die Scrollmarkierungsgruppe ist.

Wenn Sie einen Container für die Scrollmarkierungsgruppe einrichten, können alle Anker-HTML-Elemente mit einer Fragment-ID, die sich in einem solchen Container befinden, als HTML-Entsprechung von ::scroll-marker-Pseudoelementen verwendet werden. Das Anker-Element, dessen Scrollziel sich gerade im Blickfeld befindet, kann mit der Pseudoklasse :target-current formatiert werden.

Tracking-Fehler #6607668 | ChromeStatus.com-Eintrag | Spezifikation

Unterstützung des font-variation-settings-Deskriptors in der @font-face-Regel

Mit CSS können Entwickler die Schriftstärke, Breite, Neigung und andere Achsen einer Schriftart mithilfe der font-variation-settings-Eigenschaft für einzelne Elemente anpassen. Chromium-basierte Browser unterstützen diese Eigenschaft jedoch nicht in @font-face-Deklarationen. Diese Funktion unterstützt die stringbasierte Syntax für font-variation-settings, wie in CSS Fonts Level 4 definiert. Ungültige oder nicht erkannte Feature-Tags werden gemäß Spezifikation ignoriert. Binäre oder nicht standardmäßige Formulare werden nicht unterstützt. Variable Schriftarten werden sowohl aus Leistungsgründen als auch wegen ihrer typografischen Flexibilität immer häufiger verwendet. Durch die Unterstützung dieses Deskriptors in Chromium wird die Kontrolle verbessert, Wiederholungen werden reduziert und ein skalierbarer, moderner Ansatz für die Webtypografie wird unterstützt.

Tracking-Fehler 40398871 | ChromeStatus.com-Eintrag | Spezifikation

DOM

ToggleEvent-Quellattribut

Das source-Attribut eines ToggleEvent-Elements enthält das Element, das das Auslösen des ToggleEvent-Elements ausgelöst hat (falls zutreffend). Wenn ein Nutzer beispielsweise auf ein <button>-Element klickt, bei dem das Attribut popovertarget oder commandfor festgelegt ist, um ein Pop-over zu öffnen, wird für das ToggleEvent, das für das Pop-over ausgelöst wird, das Attribut „source“ auf das aufrufende <button>-Element festgelegt.

ChromeStatus.com-Eintrag | Spezifikation

Isolierte Web-Apps (IWAs)

Controlled Frame API (nur für IWAs verfügbar)

Mit dieser Funktion wird eine Controlled Frame API hinzugefügt, die nur für isolierte Web‑Apps (IWAs) verfügbar ist. Wie ähnlich benannte APIs auf anderen Plattformen ermöglicht Controlled Frame das Einbetten aller Inhalte, auch von Drittanbietern, die nicht in <iframe> eingebettet werden können. Mit Controlled Frame können eingebettete Inhalte auch mit einer Sammlung von API-Methoden und ‑Ereignissen gesteuert werden. Weitere Informationen zu isolierten Web-Apps finden Sie in der Erklärung zu isolierten Web-Apps.

Tracking-Fehler 40191772 | ChromeStatus.com-Eintrag | Spezifikation

JavaScript

Uint8Array in und aus Base64 und Hex

Base64 ist eine gängige Methode, um beliebige Binärdaten als ASCII darzustellen. JavaScript hat Uint8Arrays für Binärdaten. Es fehlt jedoch ein integrierter Mechanismus, um diese Daten als Base64 zu codieren oder Base64-Daten zu verwenden und ein entsprechendes Uint8Array zu erstellen. Mit dieser Funktion werden die Möglichkeit und die Methoden zum Konvertieren zwischen Hexadezimalstrings und Uint8Arrays hinzugefügt.

ChromeStatus.com-Eintrag | Spezifikation

Änderung des Zeitpunkts für das Versprechen „Übergang abgeschlossen“ ansehen

Das aktuelle Timing für abgeschlossene Promises erfolgt innerhalb der Rendering-Lebenszyklusphasen. Das bedeutet, dass Code, der als Ergebnis der Promise-Auflösung ausgeführt wird, nach dem visuellen Frame erfolgt, in dem der Ansichtsübergang entfernt wurde. Dies kann zu einem Flackern am Ende der Animation führen, wenn im Skript Stile verschoben werden, um einen visuell ähnlichen Zustand beizubehalten. Durch diese Änderung wird das Problem behoben, da die Bereinigungsschritte für Ansichtsübergänge asynchron nach Abschluss des Lebenszyklus ausgeführt werden.

Tracking-Fehler 430018991 | ChromeStatus.com-Eintrag

Web APIs

Option „ReadableStreamBYOBReader min

Mit dieser Funktion wird der vorhandenen Methode ReadableStreamBYOBReader.read(view) die Option min hinzugefügt. Die Methode akzeptiert bereits ein ArrayBufferView, in das Daten gelesen werden, garantiert aber derzeit nicht, wie viele Elemente geschrieben werden, bevor der Lesevorgang abgeschlossen ist. Wenn Sie einen min-Wert angeben, können Sie festlegen, dass der Stream warten muss, bis mindestens so viele Elemente verfügbar sind, bevor der Lesevorgang abgeschlossen wird. Das ist eine Verbesserung gegenüber dem aktuellen Verhalten, bei dem Lesevorgänge möglicherweise mit weniger Elementen aufgelöst werden, als in der Ansicht enthalten sein können.

Tracking-Fehler 40942083 | ChromeStatus.com-Eintrag | Spezifikation

Die API „Get Installed Related Apps“ (navigator.getInstalledRelatedApps) ermöglicht Websites den Zugriff darauf, ob die entsprechenden zugehörigen Anwendungen installiert sind. Websites dürfen diese API nur verwenden, wenn die Anwendung eine etablierte Verbindung zum Webursprung hat.

Die API wurde in Chrome 80 für Android eingeführt. In Chrome 140 wurde zusätzliche Unterstützung für Web-Apps auf dem Desktop aktiviert.

Dokumente | Tracking-Fehler #895854 | ChromeStatus.com-Eintrag | Spezifikation

In einigen Fällen ist es wichtig, serverseitig zwischen Cookies zu unterscheiden, die vom Server und vom Client gesetzt werden. Ein solcher Fall betrifft Cookies, die normalerweise immer vom Server gesetzt werden. Unerwarteter Code (z. B. ein XSS-Exploit, eine schädliche Erweiterung oder ein Commit von einem verwirrten Entwickler) kann jedoch dazu führen, dass sie auf dem Client festgelegt werden. Mit diesem Vorschlag wird ein Signal hinzugefügt, mit dem Server eine solche Unterscheidung treffen können. Genauer gesagt werden die Präfixe __Http und __HostHttp definiert, die dafür sorgen, dass ein Cookie nicht clientseitig über ein Skript gesetzt wird.

Tracking-Fehler 426096760 | ChromeStatus.com-Eintrag | Spezifikation

Service Worker

SharedWorker-Script übernimmt Controller für Blob-Script-URL

In der Spezifikation wird angegeben, dass Worker Controller für die Blob-URL übernehmen sollten. Basierend auf dem vorhandenen Code kann der Controller aber nur von DedicatedWorker übernommen werden. Shared-Worker übernehmen den Controller nicht. Dadurch wird das Verhalten von Chrome an die Spezifikation angepasst. Diese Funktion wird über die Unternehmensrichtlinie SharedWorkerBlobURLFixEnabled gesteuert.

Tracking-Fehler 324939068 | ChromeStatus.com-Eintrag | Spezifikation

ServiceWorkerStaticRouterTimingInfo hinzufügen

Dieses Feature fügt Zeitinformationen für die ServiceWorker Static Routing API hinzu, die über die Navigation Timing API und die Resource Timing API für Entwickler verfügbar gemacht werden. ServiceWorker liefert Zeitinformationen, um bestimmte Zeitpunkte zu markieren.

Mit dieser Funktion werden zwei für die Static Routing API relevante Zeitinformationen hinzugefügt:

  • RouterEvaluationStart: Zeitpunkt, zu dem eine Anfrage mit registrierten Routerregeln abgeglichen wird.
  • CacheLookupStart: Zeitpunkt, zu dem mit der Suche im Cache-Speicher begonnen werden soll, wenn die Quelle "cache" ist.

Außerdem werden mit dieser Funktion zwei Routerquelleninformationen hinzugefügt: die abgeglichene Routerquelle und die endgültige Routerquelle.

Tracking-Fehler #41496865 | ChromeStatus.com-Eintrag | Spezifikation

Ursprungstests

Benachrichtigungen über eingehende Anrufe aktivieren

Diese Funktion erweitert die Notifications API, sodass installierte PWAs Benachrichtigungen über eingehende Anrufe senden können. Diese Benachrichtigungen enthalten Schaltflächen im Anrufstil und einen Klingelton. Diese Erweiterung hilft VoIP-Web-Apps, ansprechendere Nutzererlebnisse zu schaffen, indem sie es Nutzern erleichtert, Anrufbenachrichtigungen zu erkennen und zu beantworten. Außerdem trägt diese Funktion dazu bei, die Lücke zwischen nativen und Web-Implementierungen von Apps zu schließen, die beide haben.

Origin Trial | Tracking bug #detail?id=1383570 | ChromeStatus.com-Eintrag | Spezifikation

Crash Reporting Key-Value API

Mit dieser Funktion wird eine neue Schlüssel/Wert-API eingeführt, vorläufig window.crashReport, die auf einer Karte pro Dokument basiert, in der Daten gespeichert werden, die an Absturzberichte angehängt werden.

Die Daten, die in der zugrunde liegenden Karte dieser API platziert werden, werden im CrashReportBody gesendet, wenn auf der Website Renderer-Prozesse abstürzen. So können Entwickler herausfinden, welcher bestimmte Zustand in ihrer Anwendung einen bestimmten Absturz verursacht.

Origin Trial | Tracking bug #400432195 | ChromeStatus.com entry | Spec

clipboardchange-Ereignis hinzufügen

Das Ereignis clipboardchange wird ausgelöst, wenn eine Web-App oder eine andere Systemanwendung den Inhalt der Systemzwischenablage ändert. So können Web-Apps wie Remote-Desktop-Clients ihre Zwischenablage mit der Systemzwischenablage synchronisieren. Sie bietet eine effiziente Alternative zum Abrufen der Zwischenablage mit JavaScript auf Änderungen.

Origin Trial | Tracking bug #41442253 | ChromeStatus.com entry | Spec

SharedWorker auf Android-Geräten aktivieren

Die langjährige Forderung nach SharedWorker-Unterstützung auf Android beruht auf mehreren Anforderungen von Webentwicklern:

  • Ressourcennutzung und Effizienz: Entwickler möchten eine einzelne WebSocket- oder SSE-Verbindung (Server-Sent Events) für mehrere Tabs freigeben, um Ressourcen zu schonen.
  • Persistente Ressourcenverwaltung: Eine Anforderung zum Freigeben und Beibehalten von Ressourcen über Tabs hinweg, insbesondere für Technologien wie WASM-basiertes SQLite.
  • Schließen einer Funktionslücke: Andere wichtige mobile Browser, darunter Safari unter iOS und Firefox unter Android, unterstützen SharedWorker bereits. Chrome unter Android ist der letzte wichtige Browser, in dem diese Lücke geschlossen wird.

Origin Trial | ChromeStatus.com-Eintrag | Spezifikation

Entfernen

Purpose: prefetch-Header nicht mehr von Prefetch- und Prerender-Anfragen senden

Prefetches und Prerenders verwenden jetzt den Header Sec-Purpose. Der alte Header Purpose: prefetch wird daher entfernt.

Dies gilt für die Spekulationsregeln prefetch, die Spekulationsregeln prerender, <link rel=prefetch> und die nicht standardmäßige <link rel=prerender> von Chromium.

Tracking-Fehler 420724819 | ChromeStatus.com-Eintrag | Spezifikation

Sonderregeln für die Schriftgröße für H1 innerhalb bestimmter Elemente werden eingestellt

Die HTML-Spezifikation enthält eine Liste mit Sonderregeln für <h1>-Tags, die in <article>-, <aside>-, <nav>- oder <section>-Tags verschachtelt sind:

Diese speziellen Regeln sind veraltet, da sie zu Barrierefreiheitsproblemen führen. Die Schriftgröße für verschachtelte <h1>-Elemente wird visuell reduziert, sodass sie wie <h2>-Elemente aussehen. Im Bedienungshilfenbaum wird diese Herabstufung jedoch nicht berücksichtigt.

Tracking-Fehler 394111284 | ChromeStatus.com-Eintrag | Spezifikation