Data wprowadzenia wersji stabilnej: 5 sierpnia 2025 r.
O ile nie zaznaczono inaczej, poniższe zmiany dotyczą wersji stabilnej Chrome 139 na Androida, ChromeOS, Linuksa, macOS i Windows.
CSS i interfejs
Zwarcie var()
i attr()
Jeśli nie użyto wartości zastępczej, funkcje var()
i attr()
są obliczane bez sprawdzania, czy w tej wartości zastępczej nie występują cykle.
Obsługa deskryptora font-feature-settings
w regule @font-face
Ta funkcja obsługuje składnię opartą na ciągach znaków dla font-feature-settings
zgodnie z definicją w CSS Fonts Level 4. Nieprawidłowe lub nierozpoznane tagi funkcji będą ignorowane zgodnie ze specyfikacją. Nie obsługujemy formatów binarnych ani niestandardowych.
W miarę jak czcionki OpenType będą coraz powszechniej stosowane, to ulepszenie zwiększy kontrolę nad typografią, zmniejszy nadmiarowość i będzie wspierać bardziej skalowalne, nowoczesne podejście do projektowania stron internetowych.
Błąd śledzenia nr 40398871 | Wpis na ChromeStatus.com | Specyfikacja
Funkcje niestandardowe CSS
Funkcje niestandardowe są podobne do właściwości niestandardowych, ale zamiast zwracać jedną stałą wartość, zwracają wartości na podstawie innych właściwości niestandardowych, parametrów i warunków.
Tracking bug #325504770 | ChromeStatus.com entry | Spec
Kontynuowanie przejść po przełączeniu na początkową wartość przejścia
Gdy zmieniają się właściwości związane z przejściem, powinny one wpływać tylko na nowo rozpoczęte przejścia. Oznacza to, że jeśli zmienisz właściwości przejścia, ale nie zmienisz właściwości, które mają aktywne animacje przejścia, te animacje będą nadal działać z wcześniej określonym czasem trwania i wygładzaniem.
Chrome nieprawidłowo anulował przejścia, gdy właściwość przejścia była ustawiona na none
, mimo że nie anuluje ich, jeśli zmienisz tylko transition-duration
. Dzięki tej zmianie Chrome będzie działać tak samo jak Safari i Firefox. Aktywne przejścia będą działać do momentu, gdy zmieni się wartość właściwości, co spowoduje aktualizację przejścia.
Wpis na ChromeStatus.com | Specyfikacja
Kształtowanie narożników (corner-shape
, superellipse
, squircle
)
Włącz stylizację rogów, oprócz istniejących border-radius
, wyrażając kształt i krzywiznę rogu jako superelipsę.
Umożliwia to tworzenie kształtów takich jak zaokrąglone kwadraty, wycięcia i wklęsłe krawędzie oraz animowanie przejść między nimi.
Błąd śledzenia nr 393145930 | Wpis na ChromeStatus.com | Specyfikacja
Dodaj właściwość font-width
i deskryptor oraz ustaw font-stretch
jako starszy alias.
Obsługa atrybutu async w elemencie SVG <script>
Interfejs SVGScriptElement
w SVG 2.0 wprowadza atrybut async, podobny do HTMLScriptElement
. Ten atrybut umożliwia asynchroniczne wykonywanie skryptów, co poprawia wydajność i szybkość reakcji aplikacji internetowych korzystających z SVG.
Błąd monitorujący nr 40067618 | Wpis na ChromeStatus.com | Specyfikacja
Polecenie wywołujące request-close
Elementy okna dialogowego można zamykać na różne sposoby, a deweloperzy czasami chcą mieć możliwość zapobiegania zamknięciu. Aby to osiągnąć, okna te wywołują zdarzenie anulowania. Początkowo zdarzenie to było wywoływane tylko przez żądanie zamknięcia (np. naciśnięcie klawisza ESC
). Ostatnio dodano funkcję JavaScript requestClose()
, która również wywołuje zdarzenie anulowania.
Polecenie request-close
wprowadza tę nową funkcję do interfejsu API poleceń wywołujących deklaratywnych.
Błąd śledzenia nr 400647849 | Wpis na ChromeStatus.com | Specyfikacja
Poprawka dotycząca priorytetu zakotwiczenia przewijania
Zmienia algorytm zakotwiczania przewijania. Zamiast wybierać kandydata o najwyższym priorytecie jako element zakotwiczenia, wybierz go jako zakres lub element główny zwykłego algorytmu wyboru elementu zakotwiczenia, który wybierze element znajdujący się najgłębiej na ekranie.
Urządzenie
Ulepszenia wydajności wykrywania głębi w WebXR
Udostępnia kilka nowych mechanizmów dostosowywania działania funkcji wykrywania głębi w sesji WebXR, aby zwiększyć wydajność generowania lub wykorzystywania bufora głębi.
Kluczowe mechanizmy to: możliwość żądania surowego lub wygładzonego bufora głębi, możliwość żądania, aby środowisko wykonawcze przestało lub wznowiło dostarczanie bufora głębi, oraz możliwość udostępniania bufora głębi, który nie jest dokładnie zgodny z widokiem użytkownika, dzięki czemu agent użytkownika nie musi wykonywać niepotrzebnych ponownych projekcji w każdej klatce.
Błąd śledzenia nr 410607163 | Wpis na ChromeStatus.com | Specyfikacja
DOM
Zezwalanie na większą liczbę znaków w interfejsach DOM API JavaScriptu
Parser HTML zawsze (lub od dłuższego czasu) zezwalał na używanie w elementach i atrybutach wielu różnych prawidłowych znaków i nazw, ale interfejsy API DOM JavaScriptu do tworzenia tych samych elementów i atrybutów są bardziej rygorystyczne i nie pasują do parsera.
Ta zmiana upraszcza weryfikację interfejsów DOM JavaScriptu, aby była zgodna z parserem HTML.
Tracking bug #40228234 | ChromeStatus.com entry | Spec
Grafika
WebGPU: obsługa tekstur 3D w przypadku formatów skompresowanych BC i ASTC
Funkcje texture-compression-bc-sliced-3d
i texture-compression-astc-sliced-3d
WebGPU dodają odpowiednio obsługę tekstur 3D w przypadku skompresowanych formatów BC i ASTC.
Błąd śledzenia nr 342840940 | Wpis na ChromeStatus.com | Specyfikacja
Potwierdzenie bezpiecznej płatności (SPC)
Interfejs API securePaymentConfirmationAvailability
Jest to interfejs API JavaScript, który ułatwia sprawdzanie dostępności funkcji Secure Payment Confirmation (SPC). W przypadku tego interfejsu API jedynym sposobem sprawdzenia dostępności SPC było utworzenie PaymentRequest
z wymaganymi parametrami, co jest niewygodne i trudne, jeśli deweloper chce sprawdzić dostępność SPC przed rozpoczęciem przetwarzania płatności.
Błąd śledzenia nr 40258712 | Wpis na ChromeStatus.com | Specyfikacja
Potwierdzenie bezpiecznej płatności: klucze powiązane z przeglądarką
Dodaje dodatkowy podpis kryptograficzny do potwierdzeń bezpiecznej płatności i tworzenia danych logowania. Odpowiedni klucz prywatny nie jest synchronizowany między urządzeniami. Ułatwia to programistom spełnianie wymagań dotyczących powiązania urządzenia w przypadku transakcji płatniczych.
Błąd śledzenia nr 377278827 | Wpis na ChromeStatus.com | Specyfikacja
AI na urządzeniu
Interfejs On-device Web Speech API
Ta funkcja dodaje do interfejsu Web Speech API obsługę rozpoznawania mowy na urządzeniu, dzięki czemu witryny mogą mieć pewność, że ani dźwięk, ani transkrypcja mowy nie są wysyłane do usługi innej firmy w celu przetworzenia.
Witryny mogą sprawdzać dostępność rozpoznawania mowy na urządzeniu w przypadku określonych języków, prosić użytkowników o zainstalowanie niezbędnych zasobów do rozpoznawania mowy na urządzeniu oraz w razie potrzeby wybierać między rozpoznawaniem mowy na urządzeniu a rozpoznawaniem mowy w chmurze.
Wpis na ChromeStatus.com | Specyfikacja
Nawigacja
Usuwanie nazwy okna w przypadku nawigacji między witrynami, która powoduje zmianę grupy kontekstu przeglądania
Usuwa wartość właściwości window.name
, gdy nawigacja przełącza grupy kontekstów przeglądania, aby uniknąć wycieku informacji, które mogłyby zostać wykorzystane jako wektor śledzenia.
Błąd śledzenia nr 1090128 | Wpis na ChromeStatus.com | Specyfikacja
Sieć
Ograniczanie fingerprintingu w informacjach w nagłówku Accept-Language
Zmniejsza ilość informacji, które ciąg wartości nagłówka Accept-Language
ujawnia w żądaniach HTTP i w navigator.languages
. Zamiast wysyłać pełną listę preferowanych języków użytkownika w każdym żądaniu HTTP za pomocą nagłówka Accept-Language
, Chrome wysyła tylko najbardziej preferowany język użytkownika.
Błąd śledzenia nr 1306905 | Wpis na ChromeStatus.com
Losowe przydzielanie portów TCP w systemie Windows
Wprowadzenie tej funkcji umożliwia losowanie portów TCP w wersjach systemu Windows (2020 r. lub nowszych), w których nie spodziewamy się problemów ze zbyt szybkim ponownym użyciem poprzednich portów (co powoduje odrzucenie z powodu przekroczenia limitu czasu ponownego użycia portu). Problem szybkiego ponownego wykorzystania portu wynika z problemu urodzinowego, w którym prawdopodobieństwo losowego ponownego wybrania portu, który już był używany, szybko zbiega się do 100% w przypadku każdego nowego wybranego portu w porównaniu z ponownym wykorzystaniem portu w modelu sekwencyjnym.
Śledzenie błędu nr 40744069 | Wpis na ChromeStatus.com
Wyniki
Szybsze blokowanie w tle na Androidzie
Skraca czas zamrażania stron w tle (i powiązanych z nimi procesów roboczych) z 5 minut do 1 minuty na urządzeniach z Androidem.
Błąd śledzenia nr 435623337 | Wpis na ChromeStatus.com
Bezpieczeństwo
Wywoływanie zdarzenia błędu w przypadku zablokowanego przez standard Content Security Policy (CSP) procesu roboczego
Sprawia, że Chrome jest zgodny ze specyfikacją, sprawdzając CSP podczas pobierania i uruchamiając zdarzenie błędu asynchronicznie zamiast zgłaszać wyjątek, gdy skrypt uruchamia „new Worker(url)” lub „new SharedWorker(url)”.
Błąd śledzenia nr 41285169 | Wpis na ChromeStatus.com | Specyfikacja
WebRTC
Poziom dźwięku dla ramek zakodowanych w RTC
Ta funkcja udostępnia w internecie poziom dźwięku zakodowanej ramki przesyłanej za pomocą RTCPeerConnection
i udostępnianej za pomocą przekształcenia zakodowanego WebRTC.
Błąd śledzenia nr 418116079 | Wpis na ChromeStatus.com | Specyfikacja
Interfejsy Web API
Rozszerzenia zakresu aplikacji internetowej
Dodaje pole scope_extensions
pliku manifestu aplikacji internetowej, które umożliwia rozszerzenie zakresu aplikacji internetowych na inne źródła.
Dzięki temu witryny, które kontrolują wiele subdomen i domen najwyższego poziomu, mogą być prezentowane jako jedna aplikacja internetowa.
Wymaga potwierdzenia skojarzenia z aplikacją internetową za pomocą pliku konfiguracyjnego .well-known/web-app-origin-association
.
Błąd śledzenia #detail?id=1250011 | Wpis na ChromeStatus.com | Specyfikacja
Wykrywanie typu MIME JSON zgodne ze specyfikacją
Chrome rozpoznaje teraz wszystkie prawidłowe typy MIME JSON zgodnie ze specyfikacją WHATWG mimesniff. Obejmuje to wszystkie typy MIME, których podtyp kończy się na +json
, a także application/json
i text/json
. Ta zmiana sprawia, że interfejsy API i funkcje internetowe, które korzystają z wykrywania JSON, działają zgodnie ze standardem platformy internetowej i innych przeglądarek.
Wpis na ChromeStatus.com | Specyfikacja
WebGPU core-features-and-limits
core-features-and-limits
oznacza, że adapter WebGPU i urządzenie obsługują podstawowe funkcje i limity specyfikacji.
Błąd śledzenia nr 418025721 | Wpis na ChromeStatus.com | Specyfikacja
Interfejs Crash Reporting API: określ crash-reporting
, aby otrzymywać tylko raporty o awariach.
Ta funkcja zapewnia deweloperom otrzymywanie tylko raportów o awariach, ponieważ określa punkt końcowy o nazwie crash-reporting
. Domyślnie raporty o awariach są dostarczane do punktu końcowego default
, który otrzymuje wiele innych rodzajów raportów oprócz raportów o awariach. Deweloperzy mogą podać osobny adres URL do znanego punktu końcowego o nazwie crash-reporting
, aby kierować tam raporty o awariach zamiast do punktu końcowego default
.
Błąd śledzenia nr 414723480 | Wpis na ChromeStatus.com | Specyfikacja
Wersje próbne origin
Prompt API
Interfejs API przeznaczony do interakcji z modelem językowym AI za pomocą tekstu, obrazów i dźwięku. Obsługuje różne zastosowania, od generowania podpisów do obrazów i przeprowadzania wyszukiwań wizualnych po transkrypcję dźwięku, klasyfikację zdarzeń dźwiękowych, generowanie tekstu zgodnie z określonymi instrukcjami oraz wyodrębnianie informacji lub wniosków z tekstu. Obsługuje dane wyjściowe o strukturze, które zapewniają, że odpowiedzi są zgodne z wcześniej zdefiniowanym formatem, zwykle wyrażonym jako schemat JSON. Zwiększa to zgodność odpowiedzi i ułatwia bezproblemową integrację z aplikacjami podrzędnymi, które wymagają standardowych formatów danych wyjściowych.
Ten interfejs API jest też dostępny w rozszerzeniach do Chrome. Ten wpis funkcji śledzi wyświetlenia w internecie. Dostępna jest zasada firmy (GenAILocalFoundationalModelSettings
), która umożliwia wyłączenie pobierania modelu bazowego, co spowoduje niedostępność tego interfejsu API.
Origin Trial | Post na blogu o programie Origin Trial | Błąd śledzenia nr 417530643 | Wpis na ChromeStatus.com
Współpracownicy o wydłużonym czasie życia
Do konstruktora SharedWorker
dodaliśmy nową opcję extendedLifetime: true
. Powoduje to, że współdzielony proces roboczy pozostaje aktywny nawet po zamknięciu wszystkich bieżących klientów. Głównym zastosowaniem jest umożliwienie stronom wykonywania asynchronicznych działań wymagających JavaScriptu po zwolnieniu strony, bez konieczności korzystania z service workera.
Testowanie pochodzenia | Post na blogu o testowaniu pochodzenia | Błąd śledzenia nr 400473072 | Wpis na ChromeStatus.com
Wpis dotyczący skuteczności SoftNavigation
Udostępnia deweloperom stron internetowych (eksperymentalne) heurystyki miękkiej nawigacji za pomocą zarówno PerformanceObserver
, jak i osi czasu wydajności.
Ta funkcja raportuje 2 nowe rodzaje danych o skuteczności:
soft-navigation
w przypadku interakcji użytkownika, które powodują przejście na inną stronę. Definiuje nowytimeOrigin
, który pomaga dzielić oś czasu wydajności.interaction-contentful-paint
, który raportuje wydajność wczytywania interakcji (nie tylko kolejnego wyrenderowania) i jest używany jako LCP w przypadku miękkiej nawigacji.
Testowanie w wersji próbnej | Post na blogu o testowaniu w wersji próbnej | Błąd śledzenia nr 1338390 | Wpis na ChromeStatus.com | Specyfikacja
Natychmiastowe pośrednictwo w przypadku uwierzytelniania w sieci
Tryb pośredniczenia dla navigator.credentials.get()
, który powoduje wyświetlanie użytkownikowi interfejsu logowania w przeglądarce, jeśli przeglądarka od razu zna klucz dostępu lub hasło do witryny. W przeciwnym razie odrzuca żądanie z kodem NotAllowedError
, jeśli nie ma dostępnych takich danych logowania. Dzięki temu witryna może uniknąć wyświetlania strony logowania, jeśli przeglądarka może zaoferować wybór danych logowania, które prawdopodobnie zadziałają. Jednocześnie nadal umożliwia ona proces logowania na stronie w przypadku, gdy takich danych nie ma.
Błąd śledzenia nr 408002783 | Wpis na ChromeStatus.com | Specyfikacja
Atrybut blokowania renderowania przy pełnej liczbie klatek na sekundę
Dodaje do atrybutów blokujących nowy token blokujący renderowanie w pełnej liczbie klatek na sekundę. Gdy moduł renderujący jest zablokowany za pomocą tokena pełnej liczby klatek, będzie działać z mniejszą liczbą klatek, aby zarezerwować więcej zasobów na wczytywanie.
Testowanie funkcji | Błąd śledzenia nr 397832388 | Wpis na ChromeStatus.com
Tryb zgodności WebGPU
Dodaje opcjonalny, lekko ograniczony podzbiór interfejsu WebGPU API, który może uruchamiać starsze interfejsy API grafiki, takie jak OpenGL i Direct3D11. Wybierając ten tryb i przestrzegając jego ograniczeń, deweloperzy mogą zwiększyć zasięg swoich aplikacji WebGPU, aby docierać do wielu starszych urządzeń, które nie mają nowoczesnych, jawnych interfejsów API grafiki wymaganych przez podstawową wersję WebGPU.
Testowanie źródła | Błąd śledzenia nr 40266903 | Wpis na ChromeStatus.com | Specyfikacja
Wycofania i usunięcia
Przestań wysyłać nagłówek Purpose: prefetch z wstępnego pobierania i wstępnego renderowania
Teraz, gdy pobieranie z wyprzedzeniem i renderowanie wstępne korzystają z nagłówka Sec-Purpose
, 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ć wstępnego pobierania i wstępnego renderowania zgodnie z regułami spekulacyjnymi, <link rel=prefetch>
i niestandardowej funkcji <link rel=prerender>
w Chrome.
Błąd śledzenia nr 420724819 | Wpis na ChromeStatus.com | Specyfikacja
Usunięcie obsługi systemu macOS 11
Chrome 138 to ostatnia wersja obsługująca system macOS 11. Od Chrome w wersji 139 system macOS 11 nie jest obsługiwany.
Na komputerach Mac z systemem macOS 11 Chrome będzie nadal działać i wyświetlać pasek informacyjny z ostrzeżeniem, ale nie będzie już aktualizowany. Aby zaktualizować Chrome, musisz zaktualizować komputer do obsługiwanej wersji macOS.
W przypadku nowych instalacji od wersji Chrome 139 wymagany będzie system macOS 12 lub nowszy.
Usuwanie automatycznego wykrywania zestawu znaków ISO-2022-JP
w HTML
Wykryto znane problemy z bezpieczeństwem związane z automatycznym wykrywaniem zestawu znaków w przypadku ISO-2022-JP
.
Ze względu na bardzo niskie wykorzystanie i brak obsługi automatycznego wykrywania ISO-2022-JP
w Safari obsługa została usunięta z Chrome 139.