Chrome 141

Data wprowadzenia wersji stabilnej: 30 września 2025 r.

O ile nie zaznaczono inaczej, poniższe zmiany dotyczą wersji stabilnej Chrome 141 na Androida, ChromeOS, Linuksa, macOS i Windowsa.

CSS

Wyliczenie właściwości niestandardowej w: getComputedStyle()

Podczas iteracji po window.getComputedStyle(element) w Chrome występował błąd, który powodował, że przeglądarka zapominała o uwzględnieniu wszystkich właściwości niestandardowych ustawionych w elemencie. Dlatego w zwróconym obiekcie length() nie uwzględnia liczby ustawionych właściwości niestandardowych. Ten błąd został naprawiony w Chrome 141, dzięki czemu Chrome jest zgodny z Firefoxem i Safari.

Wpis na ChromeStatus.com | Specyfikacja

DOM

ARIA Notify API

ariaNotify udostępnia interfejs JavaScript API, który umożliwia autorom treści informowanie czytnika ekranu o tym, co ma odczytać.

ariaNotify zwiększa niezawodność i kontrolę dewelopera w porównaniu z regionami aktywnymi ARIA, umożliwiając ogłaszanie zmian niezwiązanych z aktualizacjami DOM. Umożliwia to bardziej spójne i ergonomiczne korzystanie z dynamicznych aplikacji internetowych. Korzystanie z tej funkcji w elemencie iframe można kontrolować za pomocą zasady uprawnień "aria-notify".

Błąd śledzenia nr 326277796 | Wpis na ChromeStatus.com | Specyfikacja

Aktualizacja algorytmu ujawniającego przodków hidden=until-found i szczegółów

W specyfikacji wprowadzono ostatnio niewielkie zmiany w algorytmach ujawniania elementów hidden=until-found i details, aby zapobiec utknięciu przeglądarki w nieskończonej pętli. Zmiany te są teraz dostępne w Chrome.

Błąd śledzenia nr 433545121 | Wpis na ChromeStatus.com | Specyfikacja

JavaScript

Ujednolicenie implementacji w zakresie tworzenia statystyk RTP

Obiekty statystyk RTP, w tym przypadku typu „outbound-rtp” lub „inbound-rtp”, reprezentują strumień WebRTC. Identyfikatorem tego strumienia jest SSRC (liczba). Ta funkcja jest zgodna ze specyfikacją dotyczącą tego, kiedy należy tworzyć te statystyki.

Błąd śledzenia nr 406585888 | Wpis na ChromeStatus.com | Specyfikacja

Multimedia

Wesprzyj kanał restrictOwnAudio

Właściwość restrictOwnAudio to właściwość z możliwością ograniczenia przechwyconych powierzchni wyświetlania. Zmienia działanie dźwięku systemowego na przechwyconej powierzchni wyświetlania. Ograniczenie restrictOwnAudio ma zastosowanie tylko wtedy, gdy przechwytywany ekran zawiera dźwięk systemowy. W przeciwnym razie nie ma wpływu.

Wpis na ChromeStatus.com | Specyfikacja

windowAudio przez getDisplayMedia()

Rozszerza DisplayMediaStreamOptions dla getDisplayMedia() o opcję windowAudio. Ta nowa opcja umożliwia aplikacjom internetowym przekazywanie do agenta użytkownika informacji, czy użytkownikowi należy zaoferować możliwość udostępniania dźwięku po wybraniu okna. windowAudio można ustawić na wykluczenie, system lub okno w zależności od preferencji aplikacji.

Aplikacja internetowa skonfigurowana do przechwytywania dźwięku, która chce ograniczyć przechwytywanie dźwięku systemowego po wybraniu okna, powinna ustawić wartość windowAudio: "exclude".

Wpis na ChromeStatus.com | Specyfikacja

Inne postanowienia

Obsługa atrybutów prezentacji width i height w zagnieżdżonych elementach <svg>

Ta funkcja umożliwia stosowanie atrybutów prezentacji width i height do zagnieżdżonych elementów <svg> zarówno za pomocą znaczników SVG, jak i CSS. Takie podwójne podejście zapewnia deweloperom jeszcze większą elastyczność, umożliwiając im wydajniejsze zarządzanie elementami SVG i ich stylizowanie w złożonych projektach.

Śledzenie błędu nr 40409865 | Wpis na ChromeStatus.com | Specyfikacja

Digital Credentials API (obsługa prezentacji)

Witryny pobierają dane logowania z aplikacji portfela mobilnego za pomocą różnych mechanizmów, takich jak niestandardowe programy obsługi adresów URL i skanowanie kodów QR. Ta funkcja umożliwia witrynom wysyłanie do portfeli próśb o informacje o tożsamości za pomocą systemu IdentityCredential CredMan na Androidzie. Można go rozszerzyć, aby obsługiwał wiele formatów dokumentów (takich jak ISO mDoc i W3C verifiable credential), i umożliwia korzystanie z wielu aplikacji portfela. Ta aktualizacja dodaje mechanizmy, które pomagają zmniejszyć ryzyko nadużyć na dużą skalę w ekosystemie, związanych z prawdziwą tożsamością.

Błąd śledzenia nr 40257092 | Wpis na ChromeStatus.com | Specyfikacja

Zwykle, gdy wywoływana jest funkcja navigateEvent.intercept(), przechwycone nawigacje są zatwierdzane (a tym samym adresy URL są aktualizowane) natychmiast po zakończeniu wysyłania przez funkcję NavigateEvent.

Ta funkcja dodaje opcję precommitHandler do navigateEvent.intercept(), podobnie jak handler. Odroczy zatwierdzenie do momentu, gdy ten moduł obsługi (i wszystkie inne moduły obsługi przed zatwierdzeniem) zostaną rozwiązane, i umożliwi modułowi obsługi zmianę adresu URL, informacji, stanu i zachowania nawigacji w zakresie obsługi historii (push/replace).

Błąd śledzenia nr 440190720 | Wpis na ChromeStatus.com | Specyfikacja

FedCM: alternatywne pola w wyborze konta

Dodaje obsługę numerów telefonów i nazw użytkowników jako identyfikatorów do rozróżniania kont w selektorze kont, oprócz lub zamiast pełnego imienia i nazwiska oraz adresu e-mail użytkownika. Udostępnia też te nowe pola witrynom, aby mogły wpływać na tekst informacji.

Błąd śledzenia nr 382086282 | Wpis na ChromeStatus.com | Specyfikacja

Sieć / łączność

Obsługa No-Vary-Search w przypadku pamięci podręcznej dysku HTTP

Umożliwia dyskowemu buforowi HTTP używanie nagłówka odpowiedzi No-Vary-Search do udostępniania wpisu w pamięci podręcznej adresom URL, które różnią się tylko parametrami zapytania.

Deweloperzy mogą używać znaku No-Vary-Search, aby określać parametry zapytania, które nie mają wpływu na wygodę użytkowników. Częstym przykładem może być identyfikator używany do śledzenia konwersji. Obsługa tego nagłówka w pamięci podręcznej HTTP oznacza, że jeśli użytkownik wróci później na tę samą stronę bez identyfikatora konwersji, można go użyć lub ponownie zweryfikować z pamięci podręcznej, zamiast pobierać go od nowa z sieci.

Wcześniej obsługa symbolu No-Vary-Search została wprowadzona w przypadku pamięci podręcznej pobierania z wyprzedzeniem na potrzeby nawigacji, reguł spekulacyjnych dotyczących pobierania z wyprzedzeniem i wstępnego renderowania oraz wstępnego renderowania. Dzięki temu jest ona ogólnie dostępna dla wszystkich funkcji, które korzystają z pamięci podręcznej HTTP na dysku.

Błąd śledzenia nr 382394774 | Wpis na ChromeStatus.com | Specyfikacja

Offline / Storage

IndexedDB getAllRecords() i opcja kierunku dla getAll() i getAllKeys()

Ta funkcja dodaje metodę getAllRecords() do interfejsów IndexedDB IDBObjectStore i IDBIndex. Dodaje też parametr kierunku do parametrów getAll()getAllKeys(). Ta funkcja pozwala znacznie przyspieszyć niektóre wzorce odczytu w porównaniu z obecną alternatywą, czyli iteracją za pomocą kursorów. W jednym z testów obciążenie z usługi Microsoft wykazało poprawę o 350 ms.

Metoda getAllRecords() łączy getAllKeys()getAll(), ponieważ jednocześnie wylicza klucze podstawowe i wartości. W przypadku IDBIndex getAllRecords() udostępnia również klucz indeksu rekordu oprócz klucza podstawowego i wartości.

Tracking bug #40746016 | ChromeStatus.com entry | Spec

Wyniki

Reguły spekulacyjne: ulepszenia „zainteresowania” na komputerach

Na komputerach reguły spekulacji „eager” (gorliwe) wstępnie pobierają i renderują treści, gdy użytkownicy najedzie kursorem na link na krócej niż w przypadku reguł „moderate” (umiarkowanych).

Wcześniejsze działanie, polegające na jak najszybszym rozpoczynaniu wstępnego pobierania i wstępnego renderowania, było takie samo jak „natychmiastowe” oczekiwanie. Nowe zachowanie jest bardziej przydatne, ponieważ lepiej odzwierciedla intencje autora, który chce, aby jego odpowiedź była bardziej natychmiastowa niż „umiarkowana”, ale mniej natychmiastowa niż „natychmiastowa”.

Wpis na ChromeStatus.com | Specyfikacja

Bezpieczeństwo

Ścisłe zasady dotyczące tego samego pochodzenia w przypadku interfejsu Storage Access API

Dostosowuje semantykę interfejsu Storage Access API, aby ściśle przestrzegać zasad dotyczących tego samego pochodzenia w zakresie bezpieczeństwa. Oznacza to, że użycie atrybutu document.requestStorageAccess() w ramce domyślnie dołącza pliki cookie tylko do żądań wysyłanych do źródła elementu iframe (a nie do witryny).

Błąd śledzenia nr 379030052 | Wpis na ChromeStatus.com | Specyfikacja

Integralność oparta na podpisie

Ta funkcja zapewnia programistom internetowym mechanizm weryfikacji pochodzenia zasobów, od których zależą, tworząc techniczną podstawę zaufania do zależności witryny. W skrócie: serwery mogą podpisywać odpowiedzi za pomocą pary kluczy Ed25519, a programiści mogą wymagać od klienta użytkownika weryfikacji podpisu za pomocą określonego klucza publicznego. Jest to przydatne uzupełnienie kontroli opartej na adresach URL, którą zapewnia zasada bezpieczeństwa treści, oraz kontroli opartej na treści, którą zapewnia funkcja sprawdzania integralności zasobów podrzędnych.

Błąd śledzenia nr 375224898 | Wpis na ChromeStatus.com | Specyfikacja

WebRTC

Przekształcanie zakodowanych danych WebRTC (wersja 2)

Ten interfejs API umożliwia przetwarzanie zakodowanych multimediów przesyłanych przez RTCPeerConnection. W 2020 roku Chrome udostępnił wczesną wersję tego interfejsu API. Od tego czasu specyfikacja uległa zmianie, a inne przeglądarki wprowadziły zaktualizowaną wersję (Safari w 2022 r. i Firefox w 2023 r.). Wprowadzenie tej zmiany w Chrome jest zgodne ze zaktualizowaną specyfikacją w ramach Interop 2025.

Ta premiera nie obejmuje generateKeyFrame method, która jest nadal przedmiotem dyskusji.

Błąd śledzenia nr 354881878 | Wpis na ChromeStatus.com | Specyfikacja

echoCancellationMode przez getUserMedia()

Rozszerza działanie echoCancellation słownika MediaTrackConstraints. Wcześniej akceptował wartości truefalse, a teraz dodatkowo akceptuje wartości "all""remote-only". Umożliwia to klientom modyfikowanie działania funkcji redukcji echa stosowanej do ścieżek audio odbieranych z mikrofonów, a także kontrolowanie, jaka część dźwięku odtwarzanego przez system użytkownika (całość czy tylko dźwięk odbierany z PeerConnections) jest usuwana z sygnału mikrofonu.

Wpis na ChromeStatus.com | Specyfikacja

Tylko zarządzane urządzenia z ChromeOS

Zasady dotyczące uprawnień w przypadku interfejsu Device Attributes API

Nowe zasady dotyczące uprawnień umożliwiają ograniczenie dostępu do interfejsu Device Attributes API, który jest dostępny tylko w przypadku aplikacji internetowych kiosku zainstalowanych zgodnie z zasadami i izolowanych aplikacji internetowych zainstalowanych zgodnie z zasadami, i to tylko na zarządzanych urządzeniach z ChromeOS.

Funkcja jest też kontrolowana przez ustawienia treści. Wprowadzamy 2 nowe zasady: DeviceAttributesBlockedForOriginsDefaultDeviceAttributesSetting, które uzupełniają wprowadzone wcześniej zasady DeviceAttributesAllowedForOrigins. Ta funkcja jest domyślnie włączona w przypadku aplikacji internetowych kiosku i izolowanych aplikacji internetowych zainstalowanych za pomocą zasad na zarządzanych urządzeniach z ChromeOS.

Wpis na ChromeStatus.com | Specyfikacja

Wersje próbne origin

Ograniczenia dostępu do sieci lokalnej

Chrome 141 ogranicza możliwość wysyłania żądań do sieci lokalnej użytkownika,

Ten okres próbny umożliwia tymczasowy dostęp do zasobów w sieciach lokalnych z kontekstów niezabezpieczonych. Dzięki temu deweloperzy będą mieli więcej czasu na przeniesienie żądań dostępu do sieci lokalnej z niezabezpieczonego kontekstu.

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

Proofreader API

Interfejs JavaScript API do korekty wpisywanego tekstu z sugerowanymi poprawkami, oparty na modelu językowym AI.

Testowanie źródła | Błąd śledzenia nr 403313556 | Wpis na ChromeStatus.com | Specyfikacja

Rozszerzanie CSP script-src (znane też jako script-src-v2)

Ta funkcja dodaje nowe słowa kluczowe do dyrektywy script-src Content Security Policy (CSP). Dodaje to 2 nowe mechanizmy tworzenia list dozwolonych oparte na haszowaniu: źródła skryptów na podstawie haszów adresów URL i zawartości funkcji podobnych do eval()eval(). Czasami jest to określane jako script-src-v2, chociaż jest wstecznie zgodne z dotychczasowym script-src i używa tej samej dyrektywy.

Rozszerzenie zakresu funkcji skrótu na adresy URL i eval() umożliwia deweloperom ustawianie dość rygorystycznych zasad bezpieczeństwa przez wąskie listy dozwolonych skryptów według ich funkcji skrótu, nawet jeśli zawartość skryptów podlega częstym zmianom, oraz znanych bezpiecznych treści eval() bez zezwalania na niekontrolowane użycie eval().

Nowe słowa kluczowe zastępują skrypt-src oparty na hoście, jeśli są podane. Dzięki temu jeden nagłówek jest zgodny z przeglądarkami, które implementują nowe słowa kluczowe, i z tymi, które tego nie robią.

Błąd śledzenia nr 392657736 | Wpis na ChromeStatus.com | Specyfikacja

Niestandardowe deskryptory WebAssembly

Umożliwia WebAssembly wydajniejsze przechowywanie danych powiązanych z typami na poziomie źródła w nowych obiektach „niestandardowego deskryptora”. Te niestandardowe deskryptory można skonfigurować za pomocą prototypów obiektów WebAssembly tego typu na poziomie źródła. Umożliwia to instalowanie metod w łańcuchu prototypów obiektu WebAssembly i wywoływanie ich bezpośrednio z JavaScriptu przy użyciu normalnej składni wywoływania metod. Prototypy i metody można skonfigurować deklaratywnie za pomocą importowanej funkcji wbudowanej.

Origin Trial | Wpis na ChromeStatus.com | Specyfikacja

Wycofania i usunięcia

Przestań wysyłać nagłówek Purpose: prefetch z wstępnego pobierania i wstępnego renderowania

W przypadku wstępnego pobierania i wstępnego renderowania używamy teraz nagłówka Sec-Purpose. Wkrótce usuniemy starszy nagłówek Purpose: prefetch, który jest nadal przekazywany. Będzie to ukryte za flagą funkcji lub wyłącznikiem, aby zapobiec problemom z kompatybilnością.

Będzie to dotyczyć pobierania z wyprzedzeniem na podstawie reguł spekulacyjnych, wstępnego renderowania na podstawie reguł spekulacyjnychi niestandardowej funkcji w Chromium.

Błąd śledzenia nr 420724819 | Wpis na ChromeStatus.com | Specyfikacja