Veröffentlicht am 28. Mai 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 138 ist seit dem 28. Mai 2025 als Betaversion verfügbar. Sie können die neueste Version für den Desktop auf Google.com oder für Android im Google Play Store herunterladen.
CSS und UI
Diese Version enthält sechs neue CSS- und UI-Funktionen.
CSS-Größen-Keyword stretch
Ein Keyword für CSS-Größeneigenschaften (z. B. width und height), mit dem Elemente so vergrößert werden können, dass sie den verfügbaren Platz im enthaltenden Block genau ausfüllen. Es ähnelt 100%, aber die resultierende Größe wird auf den Margin-Bereich des Elements angewendet, nicht auf den Bereich, der durch box-sizing angegeben wird. Mit diesem Keyword behält das Element seine Ränder bei und ist trotzdem so groß wie möglich.
CSS-Funktionen für Vorzeichen: abs() und sign()
Die Funktionen abs() und sign() berechnen verschiedene Funktionen im Zusammenhang mit dem Vorzeichen ihres Arguments.
CSS-Umgebungsvariable für die Schriftgrößenskalierung auf Betriebssystemebene
Stellt die bevorzugte Schriftgrößenskalierung eines Nutzers für CSS bereit. Derzeit ist es für eine Seite nicht praktikabel zu erkennen, ob der Nutzer die bevorzugte Schriftgröße in den Einstellungen des Betriebssystems geändert hat. Diese CSS-Umgebungsvariable spiegelt die vom Nutzer ausgewählte Skalierung wider.
CSS sibling-index() und sibling-count()
Die Funktionen sibling-index() und sibling-count() können als Ganzzahlen in CSS-Eigenschaftswerten verwendet werden, um ein Element basierend auf seiner Position unter seinen Geschwistern oder der Gesamtzahl der Geschwister zu gestalten. Diese Funktionen können direkt als Ganzzahlwerte verwendet werden, sind aber interessanter in calc()-Ausdrücken.
li {
animation-delay: calc(0.1s * sibling-index());
}
Funktionale Notation für den Interpolationsfortschritt: CSS-Funktion progress()
Die progress() funktionale Notation ist eine mathematische Funktion, die einen
<number> Wert zurückgibt, der die Position einer Berechnung (der Fortschritt
Wert) zwischen zwei anderen Berechnungen (dem Startwert und dem End
Wert des Fortschritts) darstellt.
Viewport Segments Enumeration API
Mit der Viewport Segments API können Entwickler ihr Weblayout an faltbare Geräte anpassen. Viewport-Segmente definieren die Position und Abmessungen einer logisch getrennten Region des Viewports. Viewport-Segmente werden erstellt, wenn der Viewport durch ein oder mehrere Hardware-Features (z. B. eine Faltstelle oder ein Gelenk zwischen separaten Displays) geteilt wird, die als Trennlinie fungieren. Segmente sind die Regionen des Viewports, die vom Entwickler als logisch getrennt behandelt werden können.
Web APIs
Unterstützung für Metadaten zur Videoframe-Ausrichtung zu WebCodecs hinzufügen
Führt die Werte rotation: int und flip: bool in verschiedenen videobezogenen Schnittstellen in WebCodecs ein, damit Entwickler mit Frame-Quellen arbeiten können, die eine Ausrichtung haben (z. B. Android-Kameras und bestimmte Medien). Die VideoFrame-Schnittstelle erweitert die Möglichkeit, VideoFrames mit beliebiger Drehung und Spiegelung zu erstellen, sowie Accessoren für diese Informationen im VideoFrame-Objekt. Das VideoDecoderConfig-Objekt erhält die Felder rotation und flip, die automatisch für decodierte VideoFrame-Objekte ausgegeben werden. Die Klasse VideoEncoder erhält Mechanismen zum Übergeben von Informationen zur Drehung und Spiegelung von encode() an VideoDecoderConfig, das als Teil von EncodedVideoChunkMetadata ausgegeben wird. Wenn encode() mit Frames mit unterschiedlicher Ausrichtung aufgerufen wird, wird eine nicht schwerwiegende Ausnahme ausgelöst. Mit der Methode configure() kann die zulässige Ausrichtung zurückgesetzt werden.
Crash Reporting API: is_top_level und visibility_state
Diese Funktion fügt dem Textkörper der Crash Reporting API die Stringfelder is_top_level und visibility_state hinzu, die an den Standard-Berichtsendpunkt für Absturzberichte gesendet werden.
< und > in Attributen bei der Serialisierung maskieren
Maskieren Sie < und > in Attributwerten bei der Serialisierung. Dadurch wird das Risiko von Mutation-XSS-Angriffen verringert, die auftreten, wenn der Wert eines Attributs nach der Serialisierung und erneuten Analyse als Starttag-Token interpretiert wird.
Integritätsrichtlinie für Skripts
Mit Subresource Integrity (SRI) können Entwickler sicherstellen, dass die Assets, die sie laden möchten, tatsächlich die Assets sind, die sie laden. Derzeit gibt es jedoch keine Möglichkeit für Entwickler, sicherzustellen, dass alle ihre Skripts mit SRI validiert werden.
Mit dem Header Integrity-Policy können Entwickler festlegen, dass jede Ressource eines bestimmten Typs auf Integrität geprüft werden muss. Wenn versucht wird, eine Ressource dieses Typs ohne Integritätsmetadaten zu laden, schlägt der Versuch fehl und es wird ein Verstoßbericht ausgelöst.
Vorhersehbares gemeldetes Speicherkontingent
Melden Sie ein vorhersehbares Speicherkontingent über die Estimate API von StorageManager für Websites ohne unbegrenzte Speicherberechtigungen. Der Browsermodus eines Nutzers kann anhand des gemeldeten Speicherkontingents erkannt werden, da der verfügbare Speicherplatz im Inkognitomodus deutlich geringer ist als im regulären Modus.
Diese Maßnahme verhindert die Erkennung des Browsermodus eines Nutzers über die Storage API, indem in allen Browsermodi für Websites mit eingeschränkten Speicherberechtigungen ein künstliches Kontingent gemeldet wird, das der Nutzung + min(10 GiB, Festplatte auf das nächste GiB aufgerundet) entspricht. Websites mit der Berechtigung zur unbegrenzten Speicherung sind davon nicht betroffen. Auch das erzwungene Kontingent ist davon nicht betroffen.
pushsubscriptionchange-Ereignis bei erneuter Registrierung
Lösen Sie das pushsubscriptionchange-Ereignis in Service Workern aus, wenn einem Ursprung, für den in der Vergangenheit ein Push-Abo vorhanden war, das aber aufgrund einer Berechtigungsänderung (von „Erteilt“ zu „Verweigern“/„Standard“) widerrufen wurde, die Berechtigung für Benachrichtigungen wieder erteilt wird. Das Ereignis wird mit einem leeren oldSubscription und newSubscription ausgelöst.
Spekulationsregeln: prefetchCache und prerenderCache zum Header Clear-Site-Data hinzufügen
Zwei neue Werte für den Header Clear-Site-Data, mit denen Entwickler den Prerender- und Prefetch-Cache löschen können: prefetchCache und prerenderCache.
Diese können bei allen Anfragen gesendet werden und müssen nicht bei der Dokumentanfrage erfolgen. Sie können beispielsweise in den Antworten auf API-Aufrufe zum Hinzufügen zum Warenkorb oder zum An- und Abmelden zurückgegeben werden, um Spekulationen bei Statusänderungen zu löschen.
Spekulationsregeln: Feld target_hint
Dadurch wird die Syntax für Spekulationsregeln erweitert, damit Entwickler das Feld target_hint angeben können. Dieses Feld enthält einen Hinweis auf ein Ziel, in dem eine vorab gerenderte Seite aktiviert wird. Wenn _blank als Hinweis angegeben wird, kann eine vorab gerenderte Seite für ein Ziel aktiviert werden, das mit window.open() geöffnet wurde. Das Feld wird für das Prefetching nicht unterstützt.
Strenge Richtlinie zum gleichen Ursprung für die Storage Access API
Passt die Semantik der Storage Access API an, um in Bezug auf die Sicherheit strikt der Richtlinie zum gleichen Ursprung zu folgen. Wenn Sie document.requestStorageAccess() in einem Frame verwenden, werden standardmäßig nur Anfragen an die Quelle des iFrames (nicht an die Website) mit Cookies versehen.
Summarizer API
Eine JavaScript API zum Erstellen von Zusammenfassungen von Eingabetext, unterstützt durch ein KI-Sprachmodell. Es wird zunehmend erwartet, dass Browser und Betriebssysteme Zugriff auf ein Language Model erhalten. Durch die Bereitstellung dieses integrierten Language Models müssen nicht mehr alle Websites ein eigenes Multi-Gigabyte-Language Model herunterladen oder Eingabetext an APIs von Drittanbietern senden. Die Summarizer API bietet insbesondere eine API auf höherer Ebene, die die Interaktion mit einem Language Model ermöglicht, um Eingaben für eine Vielzahl von Anwendungsfällen auf eine Weise zusammenzufassen, die nicht vom jeweiligen Language Model abhängt. Mit der Unternehmensrichtlinie GenAILocalFoundationalModelSettings kann das Herunterladen des zugrunde liegenden Modells deaktiviert werden. Diese API ist dann nicht mehr verfügbar.
Weitere Informationen finden Sie unter Kurze Zusammenfassungen mit integrierter KI erstellen.
Language Detector API
Eine JavaScript API zum Erkennen der Sprache eines bestimmten Texts mit Konfidenzwerten. Dies ist eine wichtige Ergänzung zur Übersetzung und kann in Kombination mit der Translator API verwendet werden. Beispielsweise können Sie Nutzereingaben in einer unbekannten Sprache erfassen, die Sprache ermitteln und sie dann in eine bestimmte Zielsprache übersetzen. Viele Browser bieten bereits Funktionen zur Spracherkennung. Wir möchten diese Webentwicklern über eine JavaScript API zur Verfügung stellen, die die Translation API ergänzt.
Mit der Unternehmensrichtlinie GenAILocalFoundationalModelSettings kann das Herunterladen des zugrunde liegenden Modells deaktiviert werden. Diese API ist dann nicht mehr verfügbar.
Weitere Informationen finden Sie unter Mit integrierter KI die verwendete Sprache erkennen.
Translator API
Eine JavaScript API, mit der Webseiten Sprachübersetzungsfunktionen erhalten.
Browser bieten ihren Nutzern zunehmend Sprachübersetzungen an. Solche Übersetzungsfunktionen können auch für Webentwickler nützlich sein. Das gilt insbesondere, wenn die integrierten Übersetzungsfunktionen des Browsers nicht helfen können, z. B. bei Live- und interaktiven Diensten. Mit der Unternehmensrichtlinie GenAILocalFoundationalModelSettings kann das Herunterladen des zugrunde liegenden Modells deaktiviert werden. Diese API ist dann nicht mehr verfügbar.
Weitere Informationen finden Sie unter Übersetzungen mit integrierter KI.
Erweiterungen für Web-App-Bereiche
Fügt ein "scope_extensions" Web-App-
Manifestfeld 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. Erfordert, dass die aufgeführten Ursprünge die Verknüpfung mit der Web-App über eine Konfigurationsdatei .well-known/web-app-origin-association bestätigen.
Web Serial über Bluetooth unter Android
Mit dieser Funktion können Webseiten und Web-Apps auf Android Geräten über Bluetooth eine Verbindung zu seriellen Ports herstellen. Chrome unter Android unterstützt jetzt die Web Serial API über Bluetooth RFCOMM. Vorhandene Unternehmensrichtlinien (DefaultSerialGuardSetting, SerialAllowAllPortsForUrls, SerialAllowUsbDevicesForUrls, SerialAskForUrls und SerialBlockedForUrls) auf anderen Plattformen sind in zukünftigen Zuständen für Android aktiviert. Alle Richtlinien außer SerialAllowUsbDevicesForUrls werden aktiviert, nachdem die Funktion aktiviert wurde. SerialAllowUsbDevicesForUrls wird bei einer zukünftigen Einführung aktiviert, sobald Android die Unterstützung serieller Ports auf Systemebene bietet.
Einstellung und Entfernung
Diese Version von Chrome enthält die folgenden Einstellungen und Entfernungen. Auf ChromeStatus.com finden Sie Listen mit geplanten Einstellungen, aktuellen Einstellungen und früheren Entfernungen.
In dieser Version von Chrome werden zwei Funktionen eingestellt.
Einstellung der asynchronen Bereichsentfernung für Media Source Extensions
Der Media Source-Standard wurde vor langer Zeit geändert, um mehrdeutig definiertes Verhalten im Zusammenhang mit asynchronen Bereichsentfernungen zu verhindern:
SourceBuffer.abort()bricht keineSourceBuffer.remove()-Vorgänge mehr ab.- Durch das Festlegen von
MediaSource.durationkönnen derzeit gepufferte Medien nicht mehr abgeschnitten werden.
In beiden Fällen werden jetzt Ausnahmen ausgelöst.
Entfernung des SwiftShader-Fallbacks
Der automatische Rückfall auf WebGL, der vom Software-Renderer SwiftShader unterstützt wird, wird nicht mehr unterstützt. Das Erstellen eines WebGL-Kontexts schlägt fehl, anstatt auf SwiftShader umzustellen. Das hat zwei Hauptgründe:
- SwiftShader birgt ein hohes Sicherheitsrisiko, da JIT-Code im GPU-Prozess von Chromium ausgeführt wird.
- Die Nutzererfahrung ist beeinträchtigt, wenn von einem leistungsstarken GPU-basierten WebGL auf eine CPU-basierte Implementierung zurückgegriffen wird. Nutzer haben keine Kontrolle über dieses Verhalten und es ist schwierig, es in Fehlerberichten zu beschreiben.
Während des Einstellungszeitraums wird in der Chrome-Entwicklertools-Konsole eine Warnung angezeigt, wenn ein WebGL-Kontext erstellt und mit SwiftShader unterstützt wird. Wenn Sie --enable-unsafe-swiftshader übergeben, wird diese Warnung entfernt.