Veröffentlicht: 6. August 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 bereitgestellten Links oder in der Liste auf ChromeStatus.com. Chrome 140 ist ab dem 6. August 2025 in der Betaphase. Sie können die aktuelle Version auf der offiziellen Chrome-Website für Desktop oder im Google Play Store für Android herunterladen.
CSS und Benutzeroberfläche
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 beispielsweise von Pixeln in Grad umrechnen.
Die scroll-target-group
-Property
Die Eigenschaft scroll-target-group
gibt an, ob das Element ein Container für die Gruppe von Scrollmarkierungen 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 in der Ansicht befindet, kann mit der Pseudoklasse :target-current
formatiert werden.
Aktivieren Sie counter()
und counters()
im Alt-Text der content
-Property.
Mit dieser Funktion können Sie counter()
und counters()
im Alternativtext der Property content
verwenden. So erhalten Sie aussagekräftigere Informationen zur Verbesserung der Barrierefreiheit.
Pseudoelemente für Übergänge übernehmen mehr Animationseigenschaften
Der Pseudo-Baum für Ansichtsübergänge erbt jetzt eine Reihe von Animationseigenschaften:
animation-delay
animation-timing-function
animation-iteration-count
animation-direction
animation-play-state
Verschachtelte Ansichtsübergänge aktivieren
Mit dieser Funktion kann ein verschachtelter Pseudo-Elementbaum anstelle eines flachen Baums generiert werden. So kann der Übergang besser an die ursprünglichen Elemente und die visuelle Intention angepasst werden. Es ermöglicht das Zuschneiden, verschachtelte 3D-Transformationen und die korrekte Anwendung von Effekten wie Deckkraft, Maskierung und Filtern.
Darstellungsbereich overscroll-behavior
aus dem Stamm weitergeben
Durch diese Änderung wird overscroll-behavior
aus dem Stamm anstelle des Textkörpers weitergegeben. Die CSS Working Group hat beschlossen, Eigenschaften nicht von <body>
in den Viewport zu übertragen. Stattdessen werden Eigenschaften des Viewports vom Stammelement (<html>
) übernommen. Daher sollte overscroll-behavior
vom Stammelement aus weitergegeben werden. In Chrome gibt es jedoch ein altes Problem: overscroll-behavior
wird vom <body>
anstelle des Stamms weitergegeben. Dieses Verhalten ist nicht mit anderen Browsern kompatibel. Durch diese Änderung entspricht Chrome der Spezifikation und ist mit anderen Implementierungen kompatibel.
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 Blickpunkt zu rücken. Es werden aber nicht alle Scrollcontainer in den Viewport gescrollt:
target.scrollIntoView({container: 'nearest'});
CSS-Property caret-animation
hinzufügen
Chromium unterstützt die Animation des Attributs caret-color
. Wenn der Cursor animiert wird, stört das standardmäßige Blinken 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. Außerdem können Nutzer, die durch blinkende oder flackernde Bilder gestört werden oder darauf mit unerwünschten Reaktionen reagieren, das Blinken mit einem Nutzer-Stylesheet deaktivieren.
Mit der highlightsFromPoint
API
Mit der highlightsFromPoint
API können Entwickler mit benutzerdefinierten Highlights interagieren. Es erkennt, welche Markierungen an einem bestimmten Punkt 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 Erkennung von Highlights und ermöglicht es Entwicklern, dynamische Interaktionen mit benutzerdefinierten Highlights 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.
Timing des View Transition-Promise „finished“ ändern
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 am Ende der Animation zu einem Flackern 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 ViewTransition asynchron nach Abschluss des Lebenszyklus ausgeführt werden.
ToggleEvent
-Quellattribut hinzufügen
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 im Pop-over ausgelöste ToggleEvent
-Element das Attribut „source“ auf das aufrufende <button>
-Element festgelegt.
Verhindern, dass SVG-foreignObject
das Canvas für Blob-URLs verunreinigt
Alle Browser unterstützen schon lange die Verwendung eines <img>
-Elements mit einer SVG-Quelle in einem HTML-Canvas-drawImage
-Vorgang. Das Verhalten beim Tainting von Canvas-Elementen variiert jedoch je nach Plattform. Alle Browser kennzeichnen das Canvas als manipuliert, wenn die SVG-Quelle ein foreignObject
-Tag enthält und mit einem HTTP-URI referenziert wird. Wenn auf dasselbe SVG über einen Daten-URI verwiesen wird, wird das Canvas in allen Browsern nicht als „tainted“ markiert.
Wenn jedoch ein Blob-URI verwendet wird, wird das Canvas sowohl in Chromium (vor dieser Änderung) als auch in WebKit als „tainted“ markiert, in Gecko jedoch nicht. Wenn diese Funktion eingeführt wird, entspricht das Verhalten von Chromium dem von Gecko. So kann eine größere Bandbreite an SVG-Inhalten in drawImage
-Canvas-Aufrufen verwendet werden, ohne dass die Canvas-Elemente als „tainted“ (verunreinigt) gekennzeichnet werden.
Unterstützung des Deskriptors font-variation-settings
in @font-face rule
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 immer häufiger verwendet, da sie sowohl die Leistung als auch die typografische Flexibilität verbessern. 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.
Web APIs
Uint8Array
in base64 und Hexadezimalzahlen konvertieren und umgekehrt
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 aus Base64-Daten ein entsprechendes Uint8Array
zu erstellen. Mit dieser Funktion werden die Möglichkeit und die Methoden zum Konvertieren zwischen Hexadezimal-Strings und Uint8Arrays
hinzugefügt.
Option ReadableStreamBYOBReader
min
verwenden
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.
HTTP-Cookie-Präfix
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 sie jedoch auf dem Client festlegen. 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 kein Cookie clientseitig über ein Skript gesetzt wird.
Einschränkungen für den Zugriff auf lokales Netzwerk
In Chrome 140 wird die Möglichkeit eingeschränkt, Anfragen an das lokale Netzwerk des Nutzers zu senden. Dazu ist eine Berechtigungsaufforderung erforderlich. Eine lokale Netzwerkanfrage ist eine Anfrage von einer öffentlichen Website an eine lokale IP-Adresse oder einen Loopback oder von einer lokalen Website (z. B. einem Intranet) an einen Loopback. Wenn die Möglichkeit für Websites, diese Anfragen auszuführen, durch eine Berechtigung eingeschränkt wird, wird das Risiko von websiteübergreifenden Anfrage-Fälschungsangriffen gegen lokale Netzwerkgeräte wie Router verringert. Außerdem wird dadurch die Möglichkeit von Websites verringert, diese Anfragen zu verwenden, um das lokale Netzwerk des Nutzers zu identifizieren. Diese Berechtigung ist auf sichere Kontexte beschränkt. Wenn die Berechtigung erteilt wird, wird auch die Blockierung von gemischten Inhalten für Anfragen im lokalen Netzwerk gelockert, da viele lokale Geräte aus verschiedenen Gründen keine öffentlich vertrauenswürdigen TLS-Zertifikate erhalten können.
SharedWorker-Scripts können Controller für Blob-Script-URLs übernehmen
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.
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 stellt Timing-Informationen zum Markieren bestimmter Zeitpunkte bereit.
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 Informationen zur Routerquelle hinzugefügt: die abgeglichene Routerquelle und die endgültige Routerquelle.
Bedingtes Erstellen von Webauthentifizierung auf Android-Geräten aktivieren (wird nicht ausgeliefert)
Isolierte Web-Apps
Einführung der Controlled Frame API
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.
Neue Ursprungstests
In Chrome 140 können Sie die folgenden neuen Origin Trials aktivieren.
clipboardchange
-Ereignis hinzufügen
Das Ereignis clipboardchange
wird ausgelöst, wenn eine Web-App oder eine andere Systemanwendung den Inhalt der Systemzwischenablage ändert. Dadurch können Web-Apps wie Remote-Desktop-Clients ihre Zwischenablage mit der Systemzwischenablage synchronisieren. Es bietet eine effiziente Alternative zum Abrufen von Änderungen in der Zwischenablage mit JavaScript.
Benachrichtigungen über eingehende Anrufe aktivieren
Mit dieser Funktion wird die Notifications API erweitert, 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.
Einführung der Schlüssel/Wert-API für Absturzberichte
Mit dieser Funktion wird eine neue Schlüssel/Wert-API eingeführt, die vorläufig window.crashReport
heißt und 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.
Einstellung und Entfernung
In dieser Version von Chrome werden die unten aufgeführten Einstellungen und Entfernungen eingeführt. Auf ChromeStatus.com finden Sie Listen mit geplanten, aktuellen und früheren Entfernungen.
In dieser Version von Chrome wird eine Funktion eingestellt.
Sonderregeln für die Schriftgröße für <h1>
in einigen Elementen werden eingestellt
Die HTML-Spezifikation enthält eine Liste mit Sonderregeln für <h1>
-Tags, die in <article>
-, <aside>
-, <nav>
- oder <section>
-Elemente eingebettet 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. Diese visuelle Änderung wird jedoch nicht im Barrierefreiheitsbaum berücksichtigt.