Chrome 145

Datum der stabilen Version:10. Februar 2026

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

CSS und Benutzeroberfläche

Unterstützung für die CSS-Eigenschaft text-justify hinzufügen

Mit der Property text-justify können Sie festlegen, wie Text ausgerichtet wird, wenn text-align: justify angewendet wird. Sie können beispielsweise den Blocksatz erzwingen, indem Sie den Abstand zwischen den Zeichen auch in englischem Text vergrößern.

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

Prozentwerte für die CSS-Attribute letter-spacing und word-spacing aktivieren

Aktivieren Sie Prozentwerte für die CSS-Eigenschaften letter-spacing und word-spacing, wie in der CSS Text Module Level 4-Spezifikation definiert. Prozentwerte werden relativ zum Vorschubmaß des Leerzeichens (U+0020) berechnet. So haben Sie eine robustere und flexiblere Kontrolle über die Typografie, insbesondere bei responsiven Designs, bei denen der Textabstand an verschiedene Viewports und Schriftgrößen angepasst werden muss.

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

Berechnung der Schattenkante für „border-radius“ bei hohen border-radius-Werten optimieren

Durch diese Änderung werden Schatten und Clipgrenzen bei nahezu kreisförmigen Elementen (bei denen border-radius nahe 50 % liegt) genau an die visuelle Kontur der abgerundeten Kante angepasst.

So werden komplexe abgerundete Formen einheitlicher gerendert und es gibt keine visuellen Abweichungen bei hohen Radiuswerten. Der Anpassungsfaktor border-radius, der dafür sorgt, dass Ecken bei kleinen Radien scharf dargestellt werden, wird mit zunehmendem Radiuswert gedämpft, bis er bei einem Radius von 50 % nicht mehr angewendet wird.

Das gilt auch für nicht runde Konturen (mit corner-shape), die jetzt denselben Mechanismus zur Anpassung des Radius verwenden.

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

Spaltenumbruch für „multicol“

Unterstützung für die CSS-Eigenschaften column-wrap und column-height aus Multicol Level 2.

Dadurch wird ein vertikales Spaltenlayout oder sogar ein 2D-Spaltenlayout ermöglicht. Spalten können eine explizite, eingeschränkte Höhe haben, anstatt von der content-box-Höhe des mehrspaltigen Containers abgeleitet zu werden. Wenn alle Spalten einer Zeile ausgefüllt sind, wird eine neue Zeile mit Spalten erstellt, anstatt Spalten in Inline-Richtung zu erstellen, die überlaufen.

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

onanimationcancel-Ereignis für GlobalEventHandlers verfügbar machen

CSS Animations Level 1 erweitert die in der HTML-Spezifikation definierte GlobalEventHandlers-Schnittstelle und deklariert vier neue Event-Handler: onanimationstart, onanimationiteration, onanimationend und onanimationcancel. Nur der onanimationcancel-Event-Handler hat in der GlobalEventHandlers-IDL gefehlt.

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

Anpassbare Auswahlliste

Die Unterstützung für benutzerdefinierte Auswahl wird auf den Listbox-Rendermodus ausgeweitet, einschließlich der Einfach- und Mehrfachauswahl im Listbox-Modus.

Im Listbox-Rendermodus wird das select-Element im Fluss oder auf der Seite gerendert, anstatt mit einer separaten Schaltfläche und einem separaten Pop-up. Sie können den Listbox-Rendermodus plattformübergreifend mit den Attributen multiple oder size aktivieren, z. B. <select multiple> oder <select size=4>. Wenn die CSS-Eigenschaft appearance: base-select auf das select-Element mit diesen Attributen angewendet wird, wird das Rendering und das Eingabeverhalten verbessert.

Benutzerdefinierte select für das Pop-up mit Mehrfachauswahl werden nicht unterstützt. Diese Funktion wird später eingeführt. Sie müssen die folgenden Attribute festlegen, um ein Pop-up mit Mehrfachauswahl zu erhalten: <select multiple size=1>.

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

Die Option focusVisible auf focus

Wenn Sie die Methode focus() aufrufen, können Sie einen booleschen Wert für focusVisible im FocusOptions-Dictionary angeben. Wenn „true“ festgelegt ist, wird immer ein Fokusring um das neu fokussierte Element gezeichnet, der der Pseudoklasse :focus-visible entspricht. Wenn „false“, wird der Fokusring nicht gezeichnet und :focus-visible stimmt nicht überein. Wenn er fehlt, entscheidet der User-Agent selbst, ob der Fokusring gezeichnet werden soll, und die Pseudoklasse :focus-visible wird entsprechend abgeglichen.

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

Monochrome Emoji-Darstellung im Modus „Erzwungene Farben“ aktivieren.

Durch diese Änderung wird das Rendering-Verhalten von Emojis in Chromium im Modus „Erzwungene Farben“ aktualisiert. Bei der Auflösung berechneter Werte werden Emojis, deren font-variant-emoji-Wert normal oder unicode ist, mit ihren monochromen Glyphen gerendert, sofern verfügbar.

Chromium unterdrückt daher das Rendern von Farb-Emojis, wodurch sichergestellt wird, dass Emojis vollständig in die Pipeline des Modus mit erzwungenen Farben einbezogen werden und die Farben mit hohem Kontrast des Systems berücksichtigt werden. Das Verhalten außerhalb des Modus „Erzwungene Farben“ bleibt unverändert.

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

Overscroll-Effekt bei nicht gerooteten Scrollansichten

Hier sehen Sie elastische Overscroll-Effekte in Scrollcontainern, die nicht das Root-Element sind. Wenn ein verschachteltes scrollbares Element seine Scrollgrenze erreicht, wird die Overscroll-Funktion auf dieses Element angewendet und nicht nur auf den Stamm-Scroller. Dadurch sind weniger benutzerdefinierte JavaScript-Workarounds erforderlich. Die Funktion kann mit overscroll-behavior pro Element gesteuert werden.

Tracking bug #41102897 | ChromeStatus.com entry | Spec

Leistungsspektrum

Tatsächliche Fensterposition auf Android anzeigen

In Chrome für Android werden Position und Größe des Browserfensters mithilfe von window.screenX, window.screenY, window.outerWidth und window.outerHeight korrekt gemeldet.

Bisher wurde in Chrome fälschlicherweise davon ausgegangen, dass alle Browserfenster unter Android an den Koordinaten (0, 0) beginnen. Diese Annahme ist für Android-Tablets mit dem Freeform-Fenstermodus nicht zutreffend. Websites haben immer 0 erhalten, wenn sie die Position des Fensters auf dem Bildschirm mit window.screenX und window.screenY abgefragt haben. In diesen Feldern werden die Koordinaten der oberen linken Ecke des Fensters im globalen Koordinatensystem des Arbeitsbereichs gespeichert.

Außerdem ging Chrome unter Android fälschlicherweise davon aus, dass die äußeren Abmessungen des Browserfensters den inneren Abmessungen des Darstellungsbereichs der Website entsprechen.

window.screenX und window.screenY haben die Aliase window.screenLeft und window.screenTop.

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

JavaScript

Upsert

Dies ist ein ECMAScript-Vorschlag für Map.prototype.getOrInsert, Map.prototype.getOrInsertComputed, WeakMap.prototype.getOrInsert und WeakMap.prototype.getOrInsertComputed.

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

Schlüssel/Wert-API für Absturzberichte

Eine neue Schlüssel/Wert-API, window.crashReport, wird durch eine Karte pro Dokument unterstützt, die Daten enthält, die Chrome an Absturzberichte anhängt.

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

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

Standardmäßig reduzierte User-Agent-Strings

Ab Chrome 145 wird die Richtlinie UserAgentReduction entfernt. Mit dieser Richtlinie konnte gesteuert werden, ob Chrome einen verkürzten oder vollständigen User-Agent-String gesendet hat.

Um den Datenschutz für Nutzer zu verbessern und die Möglichkeiten für passives Tracking zu verringern, hat Chrome in Version 110 damit begonnen, die im User-Agent-Header enthaltenen Informationen standardmäßig zu reduzieren. Die Richtlinie UserAgentReduction wurde als vorübergehende Maßnahme für Unternehmen bereitgestellt, um diesen Übergang zu verwalten.

Der empfohlene Mechanismus für Websites, um auf Browser- und Geräteinformationen zuzugreifen, sind User-Agent Client Hints (UA-CH). Bei UA-CH müssen Websites aktiv bestimmte Informationen anfordern. Das ist datenschutzfreundlicher als der alte User-Agent-String. Weitere Informationen finden Sie im web.dev-Artikel Migrate to User-Agent Client Hints.

Ab Chrome 145 hat die Richtlinie UserAgentReduction keine Auswirkungen mehr. Chrome sendet standardmäßig einen reduzierten User-Agent-String. Systeme oder Anwendungen, die auf diese Richtlinie angewiesen waren, um den vollständigen (alten) User-Agent-String zu erhalten, erhalten möglicherweise nicht mehr die erwarteten detaillierten Informationen.

ChromeStatus.com-Eintrag

NavigationTransition hat die Property from, die die alte URL der Navigation verfügbar macht. Das wird durch die Bereitstellung von to (ein NavigationDestination) erreicht. Das ist besonders nützlich, wenn Sie Precommit-Handler verwenden, da die aktuelle URL während des Precommit noch nicht zur Ziel-URL gewechselt ist.

navigation.transition wird nur für abgefangene Navigationsaktionen bereitgestellt, d. h. für Navigationsaktionen, die von Dokumenten mit demselben Ursprung initiiert werden.

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

Bestätigung sicherer Zahlungen: Browsergebundene Schlüssel

Dadurch wird eine zusätzliche kryptografische Signatur für Zusicherungen zur Bestätigung sicherer Zahlungen und die Erstellung von Anmeldedaten hinzugefügt. Der entsprechende private Schlüssel wird nicht geräteübergreifend synchronisiert. So können Sie die Anforderungen für die Gerätebindung für Zahlungsvorgänge erfüllen.

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

Bestätigung sicherer Zahlungen: UX-Aktualisierung

Aktualisiert die UX-Elemente für den SPC-Dialog in Android Chrome.

Zusätzlich zur UX-Präsentation wird Folgendes hinzugefügt:

  • Händler können eine optionale Liste mit Logos von Zahlungsunternehmen für die Zahlung bereitstellen, die in der Benutzeroberfläche angezeigt werden.
  • Je nachdem, ob der Nutzer die Transaktion ohne SPC fortsetzen oder abbrechen möchte, werden unterschiedliche Ausgabezustände an den Händler zurückgegeben. In beiden Fällen wird nur ein Ausgabezustand gesendet.
  • Dem Zahlungsmittel wird ein neues Feld für das Label mit Zahlungsdetails hinzugefügt, damit der Text in SPC über zwei Zeilen angezeigt wird.

Tracking bug #405173922 | ChromeStatus.com entry | Spec

Sie können maxAge angeben, wenn Sie ein Cookie mit Cookie Store API festlegen.

Die Ablaufzeit von Cookies kann bereits mit dem Attribut expires konfiguriert werden. maxAge bietet jedoch eine idiomatischere Option und gleicht Cookie Store API an die Optionen an, die von document.cookie und dem Set-Cookie-HTTP-Header bereitgestellt werden.

Tracking bug #430926231 | ChromeStatus.com entry | Spec

InputEvent-Typen für Löschbefehle bei nicht minimierten Auswahlen

Hier werden genaue inputType-Werte für Tastenkürzel zum Löschen von ausgewähltem Text angegeben. Wenn Löschbefehle wie Ctrl+Backspace oder Ctrl+Delete mit ausgewähltem Text in contenteditable-Elementen verwendet werden, wird für die Ereignisse beforeinput und input deleteContentBackward oder deleteContentForward anstelle von deleteWordBackward oder deleteWordForward gemeldet. So können Sie genau nachvollziehen, welche Bearbeitungsvorgänge stattgefunden haben, und zuverlässige Funktionen zum Rückgängigmachen, Wiederholen oder benutzerdefinierte Bearbeitungsfunktionen implementieren.

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

Sticky-Aktivierung für das Ereignis clipboardchange

Dazu ist eine dauerhafte Nutzeraktivierung oder die Berechtigung clipboard-read zum Auslösen von clipboardchange-Ereignissen erforderlich, um eine unbefugte Überwachung der Zwischenablage zu verhindern.

Das clipboardchange-Ereignis ist relativ neu (Chrome 144) und es gibt nur minimale Änderungen für das Web. In den meisten Fällen ist die dauerhafte Nutzeraktivierung oder die Berechtigung clipboard-read bereits vorhanden, wenn die Zwischenablage überwacht wird (z. B. in Remote-Desktop-Clients).

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

Multimedia

rtpTimestamp aus WebRTC-Videoframes mit VideoFrame.metadata() extrahieren

Fügt eine VideoFrame.metadata()-Methode hinzu, die ein Dictionary mit dem Feld rtpTimestamp zurückgibt, wenn das zugrunde liegende VideoFrame dieses Feld in seinen nativen Metadaten hat. Andernfalls wird ein leeres Dictionary zurückgegeben. Nur Videoframes aus WebRTC-Quellen haben die rtpTimestamp-Metadaten.

Zusätzliche Metadatenfelder sind bereits in der nativen Implementierung vorhanden und werden im Laufe der Zeit möglicherweise für JavaScript verfügbar gemacht, wie in der vorgeschlagenen Spezifikation beschrieben.

ChromeStatus.com-Eintrag | Spezifikation

Speicher

IndexedDB: SQLite-Backend (In-Memory-Kontexte)

Die IndexedDB-Implementierung von Chromium wurde auf SQLite umgeschrieben, um die vorherige Implementierung zu ersetzen, die eine Mischung aus LevelDB und Flatfiles verwendet. An der Web-API ändert sich nichts.

Dadurch werden Zuverlässigkeit und, in geringerem Maße, Leistung verbessert.

Dies gilt nur für In-Memory-Kontexte wie den Inkognitomodus in Chromium und Google Chrome. So werden die Auswirkungen neuer Fehler begrenzt und die Notwendigkeit, vorhandene auf der Festplatte gespeicherte Daten zu migrieren, wird aufgeschoben.

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

Leistung

Bimodale Leistungszeitmessungen in Webanwendungen

Mit dem neuen Feld confidence im PerformanceNavigationTiming-Objekt können Sie feststellen, ob die Navigationszeitmessungen für Ihre Webanwendung repräsentativ sind.

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

presentationTime und paintTime zu Leistungseinträgen hinzufügen

Dadurch werden paintTime und presentationTime in den Element-Timing-Messwerten, LCP, langen Animations-Frames und Paint-Timing-Messwerten verfügbar.

paintTime gibt den Zeitpunkt an, zu dem die Rendering-Phase beendet wurde und der Browser mit der Paint-Phase begonnen hat. presentationTime ist die Zeit, zu der die Pixel auf dem Bildschirm angezeigt wurden. Dies ist etwas implementierungsabhängig.

Bei diesem Funktionseintrag wird das Timing von Ereignissen ausgelassen, was separat erfolgt.

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

Verwendung von „CssPixels“ in der LayoutShift API

Bei dieser Funktion werden die Attributionsdaten (prevRect und currentRect) in der LayoutShift API in CSS-Pixeln anstelle von physischen Pixeln gemeldet. Das Verhalten ist nicht konsistent mit anderen layoutbezogenen APIs, die alle CSS-Pixel verwenden. Diese Änderung sorgt für mehr Einheitlichkeit, vereinfacht die Nutzung und entspricht den erwarteten Einheiten beim Debuggen und in Tools.

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

Sicherheit

Anmeldedaten für gerätegebundene Sitzung

Mit Anmeldedaten für gerätegebundene Sitzungen (Device Bound Session Credentials, DBSC) können Websites die Sitzung eines Nutzers an sein bestimmtes Gerät binden. Dadurch wird es deutlich schwieriger, gestohlene Sitzungscookies auf anderen Geräten zu verwenden.

ChromeStatus.com-Eintrag | Spezifikation

Die Origin API

Der Ursprung ist ein grundlegender Bestandteil der Webimplementierung und unerlässlich für die Sicherheits- und Datenschutzgrenzen, die User-Agents einhalten. Das Konzept ist zwischen HTML und URL gut definiert, ebenso wie weit verbreitete angrenzende Konzepte wie Website.

Die Ursprünge werden Ihnen jedoch nicht direkt angezeigt. Es gibt zwar verschiedene Methoden zum Abrufen des Ursprungs für verschiedene Objekte, aber jede dieser Methoden gibt die ASCII-Serialisierung eines Ursprungs zurück, nicht den Ursprung selbst. Das hat einige negative Auswirkungen. In der Praxis kommt es häufig zu Fehlern, wenn Sie versuchen, Vergleiche desselben Ursprungs oder derselben Website durchzuführen, wenn Sie serialisierte Ursprünge verarbeiten. Diese Fehler können zu Sicherheitslücken führen. Philosophisch gesehen scheint es sich um ein fehlendes Sicherheitsprimitiv zu handeln, das sich nur schwer genau polyfillen lässt.

In Chrome 145 wird diese Lücke in der Plattform geschlossen, indem ein Origin-Objekt eingeführt wird, das das Ursprungskonzept umfasst und hilfreiche Methoden wie Vergleich, Serialisierung und Parsing bietet.

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

Aufteilung der Berechtigungen für den Zugriff auf das lokale Netzwerk

Dies ist eine Verbesserung der Einschränkungen für den Zugriff auf das lokale Netzwerk (Local Network Access, LNA), bei der Chrome die erforderliche Berechtigung von einer LNA-Berechtigung in zwei separate Berechtigungen aufteilt.

Die alte Berechtigung ist local-network-access. Die neuen Berechtigungen sind local-network (für LNA-Anfragen an IPs im lokalen Adressbereich) und loopback-network (für LNA-Anfragen an IPs im Loopback-Adressbereich).

Die alte Berechtigung wird als Alias beibehalten und funktioniert weiterhin für permissions.query und Permissions Policy. Unternehmensrichtlinien funktionieren weiterhin wie bisher. Später werden neuere, detailliertere Unternehmensrichtlinien hinzugefügt.

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

Abstimmung der Spezifikation für vertrauenswürdige Typen

Trusted Types wurde ursprünglich 2019 in Chromium implementiert und eingeführt und wird seitdem auf zahlreichen Websites verwendet. Kürzlich haben auch andere Browseranbieter Interesse daran gezeigt.

Die Trusted Types-Spezifikation wurde zusammen mit der ursprünglichen Implementierung als „Monkey-Patch“-Spezifikation verfasst. Es wird wieder mehr Aufmerksamkeit darauf gelenkt, da andere versuchen, dieselbe Spezifikation zu implementieren. Es wurde in HTML + DOM (plus ein bisschen CSP) „upstreamed“. Im Rahmen dieses Prozesses werden verschiedene Inkonsistenzen identifiziert und behoben. Einige dieser Korrekturen sind möglicherweise für Entwickler sichtbar. Die Implementierung soll so aktualisiert werden, dass sie der Spezifikation entspricht, wenn sie in HTML upstreamed wird.

Inzwischen hat WebKit die Implementierung der aktualisierten Trusted Types-Spezifikation eingeführt, was Chrome zuversichtlich stimmt, dass dieses Update sehr webkompatibel ist.

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

Grafik

WebGPU: subgroup_uniformity-Funktion

Dadurch wird der Uniformitätsanalyse ein neuer Bereich hinzugefügt und es wird geändert, welche Teile der Sprache in den einzelnen Bereichen geprüft werden, damit die Untergruppenfunktionalität in mehr Fällen als einheitlich betrachtet werden kann.

Tracking bug #454653380 | ChromeStatus.com entry | Spec

Isolierte Web-Apps

WebRequest.SecurityInfo in Controlled Frame

Mit diesem Feature wird eine WebRequest.SecurityInfo API für ControlledFrame eingeführt. Damit kann eine Web-App eine HTTPS-, WSS- oder WebTransport-Anfrage an einen Server abfangen, den vom Browser bestätigten Zertifikatsfingerabdruck des Servers abrufen und diesen Fingerabdruck dann verwenden, um das Zertifikat einer separaten Raw-TCP-/UDP-Verbindung zum selben Server manuell zu bestätigen. So kann die App bestätigen, dass sie mit dem richtigen Server kommuniziert.

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

Ursprungstests

Unterstützung für die Dekodierung von JPEG XL-Bildern (image/jxl) in Blink mit jxl-rs, einem speichersicheren reinen Rust-Decoder, wurde hinzugefügt.

JPEG XL ist ein modernes Bildformat, das als ISO/IEC 18181 standardisiert wurde und Folgendes bietet:

  • Progressive Dekodierung für eine verbesserte wahrgenommene Ladeleistung.
  • Unterstützung von großem Farbraum, HDR und hoher Bittiefe.
  • Unterstützung von Animationen

Bei dieser Implementierung wird jxl-rs anstelle des C++-Referenzdecoders libjxl verwendet, um die Anforderungen an die Speichersicherheit von Chromium zu erfüllen. Der Decoder ist hinter dem Flag enable-jxl-image-format und dem Build-Flag enable_jxl_decoder verfügbar.

ChromeStatus.com-Eintrag

WebAudio: Konfigurierbares Render-Quantum

AudioContext und OfflineAudioContext akzeptieren jetzt optional renderSizeHint. Damit können Nutzer eine bestimmte Größe für das Render-Quantum anfordern, wenn eine Ganzzahl übergeben wird. Wenn nichts oder default übergeben wird, wird der Standardwert von 128 Frames verwendet. Wenn hardware angegeben wird, kann der User-Agent eine geeignete Größe für das Render-Quantum auswählen.

Origin Trial | ChromeStatus.com-Eintrag

Einstellung und Entfernung

Entfernen der Unterstützung für veraltete virtuelle Kameras unter macOS

In Chrome wird die Unterstützung für veraltete virtuelle Kameras für alle unterstützten macOS-Versionen entfernt.

Tracking-Fehler #461717105 | ChromeStatus.com-Eintrag

BMP-Erweiterung zum Einbetten von JPEG- oder PNG-Dateien in BMP entfernen

In Chrome wird die BMP-Erweiterung für das Einbetten von JPEG- oder PNG-Dateien in BMP entfernt.

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