Veröffentlicht am 3. April 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 136 ist ab dem 3. April 2025 als Betaversion verfügbar. Sie können die aktuelle Version für den Computer unter Google.com oder im Google Play Store auf Android-Geräten herunterladen.
CSS und Benutzeroberfläche
In dieser Version werden sechs neue CSS- und UI-Funktionen eingeführt.
CSS-Property dynamic-range-limit
Ermöglicht es einer Seite, die maximale Helligkeit von HDR-Inhalten zu begrenzen.
Zeichenabstand in kursiven Schriftarten ignorieren
Diese Funktion fügt Logik hinzu, um die Einstellung für den Buchstabenabstand für kursive Schriftarten zu ignorieren, auch wenn sie vom Entwickler gemäß Spezifikation angegeben wurde. So wird sichergestellt, dass der Buchstabenabstand keine Wörter unterbricht.
Partitionieren des Verlaufs der :visited-Links
Um Datenlecks beim Browserverlauf von Nutzern zu vermeiden, werden Ankerelemente nur dann als :visited formatiert, wenn sie bereits zuvor von dieser Website und diesem Frame-Ursprung aus angeklickt wurden.
Da nur Links formatiert werden, die zuvor auf dieser Website und in diesem Frame angeklickt wurden, sind viele Seitenkanalangriffe, die entwickelt wurden, um Informationen zur Formatierung von :visited-Links zu erhalten, jetzt obsolet. Sie liefern Websites keine neuen Informationen über Nutzer mehr.
Weitere Informationen zu diesen Verbesserungen beim Datenschutz für :visited-Links
Umbenennung des Typs string attr() zu raw-string
Die CSS Working Group hat beschlossen, den Typ string attr() durch raw-string zu ersetzen.
Aus diesem Grund wurde die attr()-Syntax in Chrome geändert, sodass attr(data-foo string) jetzt attr(data-foo raw-string) ist.
Typunabhängiger var()-Fallback
Der Fallback-Teil einer var()-Funktion wird nicht anhand des Typs der benutzerdefinierten Eigenschaft validiert, auf die verwiesen wird.
Ohne Präfix: print-color-adjust
Mit der Eigenschaft
print-color-adjust
können Sie die Farben in gedruckten Webseiten anpassen. Das ist dasselbe wie das bereits von Chrome unterstützte -webkit-print-color-adjust, aber mit einem standardisierten Namen. Die Version mit dem Präfix -webkit wird nicht entfernt.
Web APIs
Unterbrochener AudioContext-Status
Fügt AudioContextState den Status "interrupted" hinzu. In diesem neuen Zustand kann die UA die Wiedergabe in diesen Szenarien pausieren und Webanwendungen können entsprechend reagieren.
Blob-URL-Partitionierung: Abrufen/Navigation
Als Fortsetzung der Speicherpartitionierung wird die Partitionierung des Blob-URL-Zugriffs nach Speicherschlüssel (Website der obersten Ebene, Frame-Ursprung und das boolesche has-cross-site-ancestor-Attribut) implementiert, mit Ausnahme von Navigationen der obersten Ebene, die nur nach Frame-Ursprung partitioniert bleiben. Dieses Verhalten ähnelt dem, was derzeit sowohl in Firefox als auch in Safari implementiert ist, und gleicht die Verwendung von Blob-URLs mit dem Partitionierungsschema ab, das von anderen Storage APIs im Rahmen der Speicherpartitionierung verwendet wird.
Außerdem wird noopener jetzt für Renderer-initiierte Navigationen der obersten Ebene zu BLOB-URLs erzwungen, bei denen die entsprechende Website websiteübergreifend mit der Website der obersten Ebene ist, die die Navigation ausführt. Damit entspricht Chrome dem Verhalten in Safari. Die entsprechenden Spezifikationen wurden entsprechend aktualisiert.
Callstacks in Absturzberichten von nicht reagierenden Webseiten
Mit dieser Funktion wird der JavaScript-Aufrufstapel erfasst, wenn eine Webseite aufgrund von JavaScript-Code, der eine Endlosschleife oder eine andere sehr lange Berechnung ausführt, nicht mehr reagiert. So können Entwickler die Ursache für die fehlende Reaktion ermitteln. Der JavaScript-Aufrufstack ist in der API für Absturzberichte enthalten, wenn der Grund „reagiert nicht“ ist.
Captured Surface Control API
Mit der Captured Surface Control API können Webanwendungen Mausradereignisse an einen erfassten Tab weiterleiten und die Zoomstufe eines erfassten Tabs lesen und ändern.
CapturedSurfaceResolution
Gibt das Pixelverhältnis der erfassten Oberfläche beim Screen-Sharing an. Diese Funktion hilft Anwendungen, Systemressourcen zu schonen oder das Verhältnis zwischen Qualität und Bandbreite an die physischen und logischen Auflösungen der erfassten Oberfläche anzupassen.
Click-Events an erfassten Zeiger senden
Wenn ein Zeiger erfasst wird, während das pointerup-Ereignis gesendet wird, wird das click-Ereignis an das erfasste Ziel gesendet und nicht an den nächsten gemeinsamen Vorfahren von pointerdown- und pointerup-Ereignissen, wie in der UI-Ereignisspezifikation beschrieben. Bei nicht erfassten Zeigern bleibt das click-Ziel unverändert.
Explizite Kompilierungshinweise mit Magic Comments
Ermöglicht das Anhängen von Informationen darüber, welche Funktionen in JavaScript-Dateien sofort geparst und kompiliert werden sollen. Die Informationen werden als Magic Comments codiert.
FedCM-Updates: Unterstützung mehrerer Identitätsanbieter, Entfernung der Funktion „Weiteres Konto hinzufügen“ im passiven Modus
Mit diesem Update können in FedCM mehrere Identitätsanbieter im selben Dialogfeld angezeigt werden.
So können Entwickler Nutzern alle unterstützten Identitätsanbieter auf einfache Weise präsentieren. Wir planen, zuerst den einfachen Fall zu behandeln, in dem sich alle Anbieter im selben get()-Aufruf befinden. Außerdem wird die Funktion „Anderes Konto hinzufügen“ im passiven FedCM-Modus nicht mehr unterstützt. Mit dieser Funktion kann neben anderen IdP-Konten im Auswahlfeld die Schaltfläche „Anderes Konto verwenden“ angezeigt werden. Die Funktion wird derzeit nicht verwendet. UX-Gespräche haben uns gezeigt, dass die Unterstützung dieser Funktion zu einem komplizierteren Ablauf ohne großen Nutzen führt. Dieses Feature funktioniert weiterhin im aktiven FedCM-Modus.
Fluent-Bildlaufleisten
Mit dieser Funktion werden die Chrome-Scrollleisten (sowohl Overlay- als auch Nicht-Overlay-Scrollleisten) unter Windows und Linux modernisiert, um dem Fluent-Design von Windows 11 zu entsprechen. Nicht überlagernde Fluent-Scrollbalken sind unter Linux und Windows standardmäßig aktiviert. Diese Änderung betrifft auch Linux, da das Design der Chrome-Scrollleiste unter Linux in der Vergangenheit an das Design unter Windows angelehnt war.
Unterstützung des H265-Codecs (HEVC) in WebRTC
Ab Chrome 136 wird HEVC neben VP8, H.264, VP9 und AV1 als unterstützter Codec in WebRTC verfügbar sein. Die Unterstützung kann über die MediaCapabilities API abgefragt werden.
Dieser neuere Codec bietet im Vergleich zu Codecs der älteren Generation wie VP8 und H264 eine höhere Komprimierungseffizienz (höhere Qualität pro Bitrate) und wird seit über einem Jahrzehnt von vielen Hardwaregeräten unterstützt. Das führt zu einer längeren Akkulaufzeit und einem geringeren Risiko von Leistungsproblemen. Je nach Leistung des zugrunde liegenden Hardware-Encoders wird die visuelle Darstellung oft verbessert, wenn keine Hardware-VP9- oder AV1-Encoder verfügbar sind.
Aktualisierungen der H26x-Codec-Unterstützung für MediaRecorder
Die MediaRecorder API unterstützt jetzt die HEVC-Codierung. Dazu wurde der Codec-String hvc1.* eingeführt und es wurden neue Codecs (hev1.* und avc3.*) hinzugefügt, die Videos mit variabler Auflösung im MP4-Format unterstützen. Die Unterstützung für die HEVC-Plattformcodierung wurde in Chrome 130 in WebCodecs hinzugefügt. Als Reaktion darauf wurde die MediaRecorder API in Chromium unterstützt. Die API unterstützt jetzt sowohl MP4- als auch Matroska-Muxertypen mit unterschiedlichen HEVC- und H.264-MIME-Typspezifikationen. Die HEVC-Codierung wird nur unterstützt, wenn das Gerät und das Betriebssystem des Nutzers die erforderlichen Funktionen bieten.
Protokolle und Berichte für IP-Adressen in Chrome Enterprise
Chrome Enterprise verbessert die Funktionen für das Sicherheitsmonitoring und Incident Response, indem lokale und Remote-IP-Adressen erfasst und gemeldet und an die Sicherheitsprüfprotokolle (Security Investigation Logs, SIT) gesendet werden. Außerdem können Administratoren mit Chrome Enterprise optional die IP-Adressen über den Chrome Enterprise Reporting Connector an SIEM-Anbieter (First-Party und Drittanbieter) senden. Diese Funktion ist für Chrome Enterprise Core-Kunden verfügbar.
Navigationsinitiator in den HTTP-Cache-Partitionsschlüssel einbeziehen
Das HTTP-Cache-Schlüsselschema von Chrome wird aktualisiert und enthält ein boolesches is-cross-site-main-frame-navigation-Attribut, um websiteübergreifende Leckangriffe mit Navigationen der obersten Ebene zu verhindern. So werden Website-übergreifende Angriffe verhindert, bei denen ein Angreifer eine Navigation auf oberster Ebene zu einer bestimmten Seite initiieren und dann zu einer Ressource navigieren kann, die bekanntermaßen von der Seite geladen wird, um vertrauliche Informationen aus dem Ladetiming abzuleiten. Diese Änderung verbessert auch den Datenschutz, da verhindert wird, dass eine schädliche Website anhand von Navigationsvorgängen darauf schließen kann, ob ein Nutzer eine bestimmte Website bereits besucht hat.
Sprachunterstützung für CanvasTextDrawingStyles
Das <canvas>-DOM-Element akzeptiert wie alle DOM-Elemente ein lang-Attribut, mit dem die sprachspezifische Behandlung für die Schriftartauswahl definiert wird (wenn Schriftarten gebietsschemaspezifische Glyphen haben). Browser berücksichtigen dieses Attribut. Wenn ein OffscreenCanvas erstellt wird, können jedoch keine Gebietsschema-Informationen festgelegt werden. Dies kann dazu führen, dass ein OffscreenCanvas gerenderte Ergebnisse erzeugt, die sich von dem Canvas unterscheiden, in dem seine Ausgabe verwendet wird. Mit dieser Funktion wird CanvasTextDrawingStyles das lang-IDL-Attribut hinzugefügt, um die Sprache für das Zeichnen von Text und Messwerten direkt zu steuern.
Berichte zur Berechtigungsrichtlinie für iFrames
Es wird ein neuer Verstoßtyp namens „Potenzieller Verstoß gegen die Richtlinie zu Berechtigungen“ eingeführt. Dabei wird nur die Richtlinie zu Berechtigungen (einschließlich der Richtlinie „Nur Bericht“) und das Attribut allow, das in iFrames festgelegt ist, berücksichtigt, um den Konflikt zwischen der erzwungenen Richtlinie zu Berechtigungen und den an iFrames weitergegebenen Berechtigungen zu erkennen.
Vorhersehbares gemeldetes Speicherkontingent
Ein vorhersehbares Speicherkontingent über die Estimate API des StorageManager für Websites ohne unbegrenzte Speicherberechtigungen melden. Der Browsermodus eines Nutzers lässt sich anhand des gemeldeten Speicherkontingents erkennen, da der verfügbare Speicherplatz im Inkognitomodus deutlich geringer ist als im regulären Modus.
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, vom Entwickler angegebenen Dimensionen aufschlüsseln (z. B. Version des bereitgestellten Codes). Da die Fehler selbst möglicherweise standortübergreifende Informationen enthalten, können wir sie Nutzern ohne Drittanbieter-Cookies nicht einfach auf der Seite anzeigen. Stattdessen werden für diese Funktion die vorhandenen aggregierten, mit Rauschen versehenen Reporting-Pipelines über den Aggregationsdienst wiederverwendet.
RegExp.escape
RegExp.escape ist eine statische Methode, die einen String entgegennimmt und eine Version mit Escapezeichen zurückgibt, die als Muster in einem regulären Ausdruck verwendet werden kann. Beispiel:
const str = prompt("Please enter a string");
const escaped = RegExp.escape(str);
const re = new RegExp(escaped, 'g'); // handles reg exp special tokens with the replacement.
console.log(ourLongText.replace(re));
Spekulationsregeln: Tag-Feld
Ermöglicht es Entwicklern, das Tag field zu Spekulationsregeln hinzuzufügen. Dieses optionale Feld kann verwendet werden, um die Quelle von Spekulationsregeln zu erfassen. So können sie beispielsweise auf einem Zwischenserver unterschiedlich behandelt werden. Alle mit einer Spekulation verknüpften Tags werden mit dem Sec-Speculation-Tags-Header gesendet.
Strenge Richtlinie zum gleichen Ursprung für die Storage Access API
Passt die Semantik der Storage Access API so an, dass sie der Richtlinie zum gleichen Ursprung strikt folgt. Wenn Sie document.requestStorageAccess() in einem Frame verwenden, werden standardmäßig nur Anfragen an den Ursprung des iFrames (nicht an die Website) mit Cookies versehen. Hinweis: Die Richtlinie CookiesAllowedForUrls oder Storage Access Headers können weiterhin verwendet werden, um websiteübergreifende Cookies zu entsperren.
Aktualisierung von ProgressEvent, sodass für loaded und total der Typ „double“ verwendet wird
Das ProgressEvent hat die Attribute loaded und total, die den Fortschritt angeben. Ihr Typ ist jetzt unsigned long long. Mit dieser Funktion wird der Typ für diese beiden Attribute stattdessen in double geändert, wodurch Entwickler mehr Kontrolle über den Wert haben. So können sie beispielsweise ein ProgressEvent mit einem total-Wert von 1 erstellen und den Wert loaded schrittweise von 0 auf 1 erhöhen. Das entspricht dem Standardverhalten des HTML-Elements <progress>, wenn das Attribut „max“ weggelassen wird.
DOMPointInit für getCharNumAtPosition, isPointInFill, isPointInStroke verwenden
Durch diese Änderung wird der Chromium-Code in Bezug auf die Verwendung von DOMPointInit anstelle von SVGPoint für getCharNumAtPosition, isPointInFill und isPointInStroke an die aktuelle W3C-Spezifikation für SVGGeometryElement und SVGPathElement angepasst.
Bedingtes Erstellen der Webauthentifizierung (Passkey-Upgrades)
Mit bedingten WebAuthn-Erstellungsanfragen können Websites vorhandene Passwortanmeldedaten auf einen Passkey umstellen.
WebGPU: GPUAdapterInfo-Attribut isFallbackAdapter
Das boolesche Attribut GPUAdapterInfo isFallbackAdapter gibt an, ob ein Adapter erhebliche Leistungseinschränkungen aufweist, um eine höhere Kompatibilität, ein besser vorhersagbares Verhalten oder einen verbesserten Datenschutz zu erzielen. Beachten Sie, dass auf einigen Systemen möglicherweise kein Fallback-Adapter vorhanden ist.
Neue Ursprungstests
In Chrome 136 können Sie die folgenden neuen Ursprungstests aktivieren.
Audio Output Devices API: setDefaultSinkId()
Mit dieser Funktion wird MediaDevices setDefaultSinkId() hinzugefügt, sodass der Frame der obersten Ebene das standardmäßige Audioausgabegerät ändern kann, das von seinen untergeordneten Frames verwendet wird.
Bimodale Leistungszeitmessungen für Webanwendungen
Webanwendungen können aufgrund von Faktoren, die außerhalb der Kontrolle der Webanwendung liegen, unter einer bimodalen Verteilung der Seitenaufbauleistung leiden. Beispiel:
- Wenn ein User-Agent zum ersten Mal gestartet wird (Kaltstart), muss er viele ressourcenintensive Initialisierungsaufgaben ausführen, die um Systemressourcen konkurrieren.
- Browsererweiterungen können sich auf die Leistung einer Website auswirken. Einige Erweiterungen führen beispielsweise auf jeder besuchten Seite zusätzlichen Code aus, was die CPU-Auslastung erhöhen und zu langsameren Reaktionszeiten führen kann.
- Wenn ein Computer mit intensiven Aufgaben beschäftigt ist, kann dies dazu führen, dass Webseiten langsamer geladen werden.
In diesen Szenarien konkurrieren Inhalte, die die Web-App zu laden versucht, mit anderen Vorgängen auf dem System. Daher ist es schwierig zu erkennen, ob Leistungsprobleme in Webanwendungen selbst oder aufgrund externer Faktoren auftreten.
Mit dem neuen Feld confidence im Objekt PerformanceNavigationTiming können Entwickler feststellen, ob die Navigationszeitmessungen für ihre Webanwendung repräsentativ sind.
Anmeldedaten für gerätegebundene Sitzung
Eine Möglichkeit für Websites, eine Sitzung sicher an ein einzelnes Gerät zu binden.
So können Server eine Sitzung haben, die sicher an ein Gerät gebunden ist. Der Browser erneuert die Sitzung regelmäßig, wie vom Server angefordert, mit dem Nachweis des Besitzes eines privaten Schlüssels.
Aktualisierung der Implementierung des Canvas-Text-Renderings
Die Interna von measureText(), fillText() und strokeText() von CanvasRenderingContext2D und OffscreenCanvasRenderingContext2D wurden durch eine neue Implementierung ersetzt, die RTL-Text und Caching besser unterstützt. Dies kann sich auf die Leistung und die BIDI-Textausgabe auswirken. Mit diesem Ursprungstest können Entwickler von textlastigen Canvas-Anwendungen die neue Implementierung ausprobieren und alle Probleme melden, die auftreten.
Einstellung und Entfernung
In dieser Version von Chrome werden die folgenden Einstellungen und Entfernungen eingeführt. Auf ChromeStatus.com finden Sie Listen mit geplanten, aktuellen und früheren Entfernungen.
In dieser Version von Chrome werden zwei Funktionen eingestellt.
Getters von Intl Locale Info werden eingestellt
Die Intl Locale Info API ist ein ECMAScript-TC39-Vorschlag der 3. Phase, mit dem das Intl.Locale-Objekt durch die Bereitstellung von Informationen zur Sprache und Region erweitert wird. Dazu gehören Wochendaten (erster Tag in der Woche, Wochenendstarttag, Wochenendendtag, Mindesttag in der ersten Woche) und der in der Sprache und Region verwendete Stundenzyklus für die Textrichtung. Durch diese Änderung werden einige Getter entfernt, die seit ihrer Einführung durch eine Spezifikationsänderung als veraltet gelten.
HTMLFencedFrameElement.canLoadOpaqueURL() entfernen.
canLoadOpaqueURL() wurde 2023 durch navigator.canLoadAdAuctionFencedFrame() ersetzt. Seitdem wird beim Aufrufen der alten API eine Warnung in der Deprecation Console angezeigt, die Entwickler auf die neue API hinweist. Es ist nicht sinnvoll, die Funktion an HTMLFencedFrameElement anzuhängen. Sie sollte stattdessen an das navigator-Objekt angehängt werden, das andere Methoden für Fenced Frames und Anzeigenauktionen enthält.