Opublikowano: 3 grudnia 2025 r.
O ile nie zaznaczono inaczej, te zmiany dotyczą najnowszej wersji beta Chrome na Androida, ChromeOS, Linuksa, macOS i Windowsa. Więcej informacji o tych funkcjach znajdziesz w podanych linkach lub na liście na stronie ChromeStatus.com. Najnowszą wersję na komputery pobierz z Google.com, a na Androida – ze Sklepu Google Play.
CSS i interfejs użytkownika
Pozycjonowanie CSS z transformacjami
Jeśli element z pozycjonowaniem względem elementu zakotwiczonego jest powiązany z elementem zakotwiczonym, który ma transformację (lub jest zawarty w elemencie z transformacją), przeglądarka rozwiązuje funkcje anchor() i anchor-size() względem ramki ograniczającej przekształconego elementu zakotwiczonego.
Zastępcze formaty CSS do wyróżniania tekstu na stronie
Udostępnia stylizację wyników wyszukiwania znajdź na stronie jako pseudoelement ::search-text, który jest pseudoelementem wyróżnienia podobnym do tych używanych do zaznaczania i błędów ortograficznych. Umożliwia to zmianę kolorów pierwszego planu i tła lub dodanie dekoracji tekstu. Jest to szczególnie przydatne, jeśli domyślne ustawienia przeglądarki mają niewystarczający kontrast z kolorami strony lub są w inny sposób nieodpowiednie.
Więcej informacji znajdziesz na blogu Igalia w artykule Find-in-Page Highlight Styling.
Nie używaj aria-details do pozycjonowania względem elementu zakotwiczonego
Kod tworzący relacje aria-details w przypadku użycia pozycjonowania względem elementu zakotwiczonego w innych przypadkach niż wyskakujące okienka był prawdopodobnie błędem. Ponieważ wyskakujące okienka i inne relacje semantyczne tworzą aria-details, a pozostałe przypadki użycia są prawdopodobnie niesemantyczne, Chrome nie tworzy już tych relacji w przypadkach niesemantycznych.
Obsługa przewijania @scroll-state
Umożliwia stylizowanie elementów potomnych kontenerów na podstawie ostatniego kierunku przewijania.
Przykład:
.scrolling-up {
translate: 80px 0;
transition: 0.4s translate;
}
html {
container-type: scroll-state;
}
@container scroll-state(scrolled: top) {
.scrolling-up { translate: 0 0; }
}
Respektuj overscroll-behavior w przypadku przewijania za pomocą klawiatury
Gdy ustawisz overscroll-behavior na wartość inną niż auto, przeglądarka nie powinna wykonywać łańcuchowego przewijania. Chrome respektuje to w przypadku przewijania za pomocą myszy lub dotyku, ale ignoruje przewijanie za pomocą klawiatury. Ta zmiana sprawia, że przewijanie za pomocą klawiatury również respektuje overscroll-behavior.
Respektuj overscroll-behavior w przypadku kontenerów z paskami przewijania, których nie można przewijać
Właściwość overscroll-behavior ma zastosowanie do wszystkich elementów kontenera z paskami przewijania, niezależnie od tego, czy te elementy mają zawartość, która się nie mieści, czy też można je przewijać. Możesz użyć overscroll-behavior, aby zapobiec propagacji przewijania na tle overflow: hidden lub elemencie overflow: auto bez konieczności sprawdzania, czy zawartość się nie mieści.
Dopasowywanie container-name poza zakresem drzewa
Przeglądarka ignoruje zakres drzewa podczas dopasowywania container-name do zapytań @container.
Wcześniej dopasowywanie container-name do zapytań @container używało nazw lub odwołań w zakresie drzewa. Oznaczało to, że ta sama nazwa nie będzie pasować, jeśli reguła @container i właściwość container-type pochodzą z różnych drzew, np. jeśli deklaracja container-type pochodzi z wewnętrznego drzewa cienia.
Dzięki tej zmianie wartości container-name pasują niezależnie od reguły @container lub deklaracji container-type.
Kaskadowość CSS SVG2
Dostosowuje implementację Chrome do specyfikacji SVG2 w zakresie dopasowywania reguł CSS
w drzewach elementów <use>.
Selektory pasują do elementów instancji <use> zamiast do
poddrzewa elementu źródłowego. Oznacza to, że selektory nie pasują już do elementów nadrzędnych i równorzędnych poza sklonowanym poddrzewem. Co ważniejsze, selektory stanu
takie jak :hover pasują teraz w <use> instancjach.
Interfejsy API przeglądarki
XRVisibilityMaskChange
Dodaje zdarzenie XRVisibilityMaskChange, które zawiera listę wierzchołków i indeksów reprezentujących siatkę widocznej części widocznego obszaru użytkownika.
Te dane można wykorzystać do ograniczenia ilości rysowanego okna, co poprawia wydajność. Aby lepiej obsługiwać to zdarzenie, obiekty XRView otrzymują też unikalne identyfikatory, które ułatwiają parowanie z powiązanymi maskami. Jest to rozszerzenie podstawowej specyfikacji WebXR.
Udostępnij zdarzenie onanimationcancel w GlobalEventHandlers
Animacje CSS na poziomie 1 rozszerzają interfejs GlobalEventHandlers zdefiniowany w specyfikacji HTML, deklarując 4 nowe moduły obsługi zdarzeń: onanimationstart, onanimationiteration, onanimationend i onanimationcancel.
W IDL GlobalEventHandlers brakowało tylko modułu obsługi zdarzeń onanimationcancel.
Więcej informacji znajdziesz w specyfikacji Animacje CSS na poziomie 1 oraz w sekcji GlobalEventHandlers w specyfikacji HTML.
Metoda waitUntil() w przejściach widoku
Element ViewTransition automatycznie tworzy drzewo pseudoelementów, aby wyświetlać i animować elementy biorące udział w przejściu. Zgodnie ze specyfikacją to poddrzewo jest tworzone, gdy rozpoczyna się animacja przejścia widoku, i niszczone, gdy animacje powiązane ze wszystkimi pseudoelementami przejścia widoku są w stanie ukończonym (lub dokładniej, w stanie nieuruchomionym i niezatrzymanym).
Działa to w większości przypadków i zapewnia deweloperom płynne działanie. W bardziej zaawansowanych przypadkach jest to jednak niewystarczające, ponieważ deweloperzy czasami chcą, aby pseudodrzewo przejścia widoku było zachowywane po zakończeniu animacji.
Jednym z przykładów jest powiązanie przejść widoku z animacjami sterowanymi przewijaniem. Gdy animacja jest sterowana przez oś czasu przewijania, poddrzewo nie powinno być niszczone po zakończeniu animacji, ponieważ przewijanie wstecz może nadal animować pseudoelementy.
Aby umożliwić zaawansowane użycie przejścia widoku, ta intencja dodaje funkcję waitUntil() do obiektu ViewTransition, która przyjmuje obietnicę. Ta obietnica opóźnia zniszczenie pseudodrzewa do momentu, aż zostanie rozstrzygnięta.
Element <geolocation>
Wprowadza element <geolocation>, deklaratywny, aktywowany przez użytkownika element sterujący
dostępem do lokalizacji użytkownika. Usprawnia proces użytkownika i dewelopera, obsługując przepływ uprawnień i bezpośrednio udostępniając dane o lokalizacji w witrynie, co często eliminuje konieczność wykonywania osobnego wywołania interfejsu API JavaScript.
Rozwiązuje to długotrwały problem z prośbami o uprawnienia wywoływanymi bezpośrednio z JavaScriptu bez silnego sygnału intencji użytkownika. Osadzenie w stronie elementu sterowanego przez przeglądarkę sprawia, że kliknięcie użytkownika stanowi wyraźny, zamierzony sygnał. Zapewnia to lepsze wrażenia użytkownika i, co najważniejsze, ścieżkę odzyskiwania dla użytkowników, którzy wcześniej odrzucili uprawnienia.
WebGPU: funkcja subgroup_id
Wartości wbudowane subgroup_id i num_subgroups są dostępne, gdy włączone jest rozszerzenie podgrup.
WebGPU: standardowy układ bufora jednolitego
Buforów jednolitych zadeklarowanych w shaderach WGSL nie trzeba już wyrównywać do 16 bajtów w przypadku elementów tablicy ani dopełniać przesunięć zagnieżdżonych struktur do wielokrotności 16 bajtów.
Interfejs Temporal API
Interfejs Temporal API w ECMA262
udostępnia standardowe obiekty i funkcje do pracy z datami i godzinami. Date
od dawna stanowi problem w ECMAScript. Temporalto globalny Object, który działa jako przestrzeń nazw najwyższego poziomu (np. Math), wprowadzając nowoczesny interfejs API daty i godziny do języka ECMAScript. Szczegółowe informacje o motywacjach, znajdziesz w artykule Fixing JavaScript Date: Getting Started.
Obsługa atrybutów ping, hreflang, type i referrerPolicy w przypadku SVGAElement
Dodaje obsługę atrybutów ping, hreflang, type i referrerPolicy w przypadku SVGAElement, dostosowując jego działanie do HTMLAnchorElement, aby zapewnić spójną obsługę linków w HTML i SVG.
Zdarzenie clipboardchange
Zdarzenie clipboardchange jest wywoływane, gdy zawartość schowka systemowego zostanie zmieniona przez aplikację internetową lub inną aplikację systemową. Dzięki temu aplikacje internetowe, np. klienci zdalnego pulpitu, mogą synchronizować swoje schowki ze schowkiem systemowym. Jest to wydajna alternatywa dla sondowania schowka (za pomocą JavaScriptu) pod kątem zmian.
Interfejs User-Agent Client Hints – zasada uprawnień ch-ua-high-entropy-values
Dodaje obsługę zasady uprawnień ch-ua-high-entropy-values, która umożliwia witrynie najwyższego poziomu ograniczenie, które dokumenty mogą zbierać wskazówki klienta o wysokiej entropii za pomocą interfejsu JavaScript API navigator.userAgentData.getHighEntropyValues().
Ograniczanie zbierania wskazówek o wysokiej entropii przez HTTP jest już możliwe dzięki istniejącym zasadom uprawnień dla wskazówek klienta.
Odbicie lustrzane operatorów MathML od prawej do lewej
Dodaje obsługę odbicia lustrzanego na poziomie znaku i glifu podczas renderowania operatorów MathML w trybie od prawej do lewej.
W trybie od prawej do lewej niektóre operatory można odbić lustrzanie, zmieniając je na inny punkt kodowy (np. prawy nawias staje się lewym). Jest to odbicie lustrzane na poziomie znaku, a równoważności są definiowane przez właściwość Bidi_Mirrored Unicode.
Niektóre operatory nie mają odpowiedniego znaku odbicia lustrzanego. W takim przypadku stosowane jest odbicie lustrzane na poziomie glifu z funkcją czcionki rtlm, w której inny glif może zastąpić go w kontekście odbicia lustrzanego. Niektóre istniejące implementacje bezpośrednio odbijają lustrzanie oryginalny glif, ale może to zmienić znaczenie znaków asymetrycznych, takich jak całka konturowa w kierunku zgodnym z ruchem wskazówek zegara.
Obsługa multiemisji w interfejsie Direct Sockets API w przypadku izolowanych aplikacji internetowych
Ta funkcja umożliwia izolowanym aplikacjom internetowym subskrybowanie grup multiemisji, odbieranie od nich pakietów UDP i określanie dodatkowych parametrów podczas wysyłania pakietów UDP na adresy multiemisji.
Wydajność i czas zdarzenia: InteractionCount
Interfejs Event Timing API jest częścią osi czasu wydajności i mierzy wydajność interakcji użytkownika. Niektóre zdarzenia mają przypisaną wartość interactionId, która jest przydatna do grupowania powiązanych interakcji na podstawie wspólnych fizycznych danych wejściowych lub gestów użytkownika.
Ta funkcja dodaje performance.interactionCount, czyli łączną liczbę interakcji, które wystąpiły na stronie.
Ta funkcja jest szczególnie przydatna do obliczania wartości wskaźnika INP (Interaction to Next Paint), który wymaga znajomości łącznej liczby interakcji, aby obliczyć wynik w wysokim centylu (p98 w przypadku stron z ponad 50 interakcjami).
Ta funkcja jest określona od dawna, była wcześniej prototypowana w Chromium, ale nigdy nie została udostępniona, jest częścią Interop 2025 i jest już dostępna w innych przeglądarkach.
Zgodne z różnymi przeglądarkami zdarzenia graniczne wskaźnika i myszy po zmianach w DOM
Po usunięciu elementu docelowego zdarzenia z modelu DOM logicznym celem wskaźnika, zgodnie ze zdarzeniami granicznymi wskaźnika i myszy (czyli zdarzeniami over, out, enter i leave), musi być najbliższy element nadrzędny nadal dołączony do modelu DOM.
Chrome śledzi węzeł nawet po jego usunięciu z modelu DOM. W rezultacie, jeśli wskaźnik przeniesie się do nowego węzła B po usunięciu z modelu DOM węzła A, sekwencja zdarzeń granicznych (zdarzenia pointerover, pointerout, pointerenter, pointerleave i odpowiadające im zdarzenia myszy) sugerowała ruch wskaźnika z A do B. Zgodnie z nowym konsensusem sekwencja zdarzeń sugeruje ruch wskaźnika z „rodzica A” do B.
Blokada wskaźnika na Androidzie
Umożliwia dostęp do surowego ruchu myszy przez zablokowanie celu zdarzeń myszy na jednym elemencie i ukrycie kursora myszy. Interfejs Pointer Lock API jest już obsługiwany na komputerach. Ta wersja wprowadza obsługę na Androidzie.
Wartość wyliczenia RTCDegradationPreference – maintain-framerate-and-resolution
maintain-framerate-and-resolution wyłącza wewnętrzną adaptację wideo WebRTC.
Dzięki temu aplikacja może implementować własną logikę adaptacji i zapobiegać zakłóceniom ze strony wewnętrznej adaptacji.
Interfejs WebAuthn Signal API na Androidzie i iOS
Umożliwia stronom korzystającym z WebAuthn zgłaszanie informacji o istniejących kluczach dostępu do dostawców magazynu danych logowania, aby nieprawidłowe lub odwołane dane logowania można było zaktualizować lub usunąć z interfejsu dostawcy i interfejsu systemu.
Ta funkcja była już dostępna na komputerach, a teraz jest dostępna na Androidzie i iOS.
Interfejs Signal API obsługuje teraz też mechanizm bezpieczeństwa w przypadku kluczy w Menedżerze haseł Google na wszystkich obsługiwanych platformach. Wcześniej, gdy strona korzystająca z usługi sygnalizowała, że dane logowania są nieznane lub zostały usunięte, klucz dostępu był trwale usuwany.
Teraz Menedżer haseł Google ukrywa klucz dostępu zamiast go usuwać. Klucze można odzyskać, wywołując signalAllAcceptedCredentials z listą wcześniej ukrytych kluczy.
Nowe wersje próbne origin
W Chrome 144 możesz wziąć udział w tych wersjach próbnych origin trials.
Ulepszone TextMetrics obszaru roboczego
Rozszerza interfejs Canvas API TextMetrics, aby obsługiwać prostokąty zaznaczenia, zapytania o ramkę ograniczającą i operacje oparte na klastrach glifów.
Ta funkcja umożliwia tworzenie złożonych aplikacji do edycji tekstu z dokładnym zaznaczaniem, pozycjonowaniem kursora i testowaniem trafień. Dodatkowo renderowanie oparte na klastrach ułatwia tworzenie zaawansowanych efektów tekstowych, takich jak niezależne animacje i style znaków.
Wycofania i usunięcia
Ta wersja Chrome wprowadza wycofania i usunięcia wymienione w tej sekcji. Listy planowanych wycofań, bieżących wycofań i poprzednich usunięć znajdziesz na stronie ChromeStatus.com.
Wycofanie interfejsu Topics API
Interfejs Topics API umożliwia kierowanie reklam na podstawie ogólnych zainteresowań użytkownika podczas przeglądania internetu bez ujawniania jego dokładnej historii przeglądania.
Po ogłoszeniu, że Chrome utrzyma dotychczasowe podejście do plików cookie innych firm, wycofujemy i planujemy usunąć interfejs Topics API (wraz z niektórymi innymi technologiami, jak opisano na stronie stanu funkcji Piaskownicy prywatności).
Wycofanie Protected Audience API
Interfejs Protected Audience API umożliwia reklamowanie grup zainteresowań bez plików cookie innych firm i śledzenia użytkowników w witrynach.
Po ogłoszeniu, że Chrome utrzyma dotychczasowe podejście do plików cookie innych firm, wycofujemy i planujemy usunąć interfejs Protected Audience API (wraz z niektórymi innymi technologiami, jak opisano na stronie stanu funkcji Piaskownicy prywatności).
Wycofanie interfejsu Shared Storage API
Interfejs Shared Storage API to chroniący prywatność interfejs API przeglądarki, który umożliwia przechowywanie danych niepodzielonych przez witrynę własną.
Po ogłoszeniu, że Chrome utrzyma dotychczasowe podejście do plików cookie innych firm, zespół wycofuje i planuje usunąć interfejs Shared Storage API (wraz z niektórymi innymi technologiami, jak opisano na stronie stanu funkcji Piaskownicy prywatności).
Wycofanie interfejsu Attribution Reporting API
Interfejs Attribution Reporting API to interfejs API zaprojektowany do pomiaru konwersji reklam bez plików cookie innych firm i śledzenia użytkowników w witrynach.
Wycofanie interfejsu Private Aggregation API
Interfejs Private Aggregation API to ogólny mechanizm pomiaru zagregowanych danych z różnych witryn w sposób chroniący prywatność. Został pierwotnie zaprojektowany z myślą o przyszłości bez plików cookie innych firm.
Po ogłoszeniu, że Chrome utrzyma dotychczasowe podejście do plików cookie innych firm, zespół wycofuje i planuje usunąć interfejs Private Aggregation API (wraz z niektórymi innymi technologiami, jak opisano na stronie stanu funkcji Piaskownicy prywatności). Ten interfejs API jest udostępniany tylko przez interfejsy Shared Storage i Protected Audience API, które również mają zostać wycofane i usunięte. Dlatego w przypadku interfejsu Private Aggregation API nie trzeba wykonywać żadnych dodatkowych działań.
Wycofanie zestawów powiązanych witryn
Zestawy powiązanych witryn zapewniają deweloperom framework do deklarowania relacji między witrynami, aby umożliwić ograniczony dostęp do plików cookie w różnych witrynach w określonych celach związanych z użytkownikiem. Umożliwia to interfejs Storage Access API i document.requestStorageAccessFor (patrz następna sekcja).
Po ogłoszeniu, że Chrome utrzyma dotychczasowe podejście do plików cookie innych firm, wycofujemy i planujemy usunąć zestawy powiązanych witryn (wraz z niektórymi innymi technologiami, jak opisano na stronie stanu funkcji Piaskownicy prywatności).
Wycofanie document.requestStorageAccessFor
Interfejs requestStorageAccessFor API jest rozszerzeniem interfejsu Storage Access API, które umożliwia witrynie najwyższego poziomu żądanie dostępu do plików cookie bez partycji („własnych”) w imieniu witryn osadzonych. Przeglądarki będą miały uznanie w kwestii przyznawania lub odmawiania dostępu, a potencjalnym sygnałem będą mechanizmy takie jak członkostwo w zestawach powiązanych witryn. Umożliwi to witrynom najwyższego poziomu korzystanie z interfejsu Storage Access API.
Po ogłoszeniu, że Chrome utrzyma dotychczasowe podejście do plików cookie innych firm, wycofujemy i planujemy usunąć requestStorageAccessFor (wraz z niektórymi innymi technologiami, jak opisano na stronie stanu funkcji Piaskownicy prywatności).
Wycofanie savedTabGroups jako pojedynczej wartości w SyncTypesListDisabled
Zasada dla firm
SyncTypesListDisabled
umożliwia administratorom wyłączenie synchronizacji typu danych
savedTabGroupsna platformach komputerowych. Na platformach mobilnych synchronizacja grup kart jest już zarządzana przez typ danych tabs. Aby dostosować
działanie na komputerach do urządzeń mobilnych i uprościć zarządzanie synchronizacją, pojedynczy
savedTabGroups typ danych został wycofany i nie jest już indywidualnie
konfigurowalną wartością w ramach
SyncTypesListDisabled
zasady.
Elementy wczytywane zewnętrznie podczas analizowania XML-a
W określonych okolicznościach Chrome synchronicznie pobiera zewnętrzne encje XML lub DTD i włącza je do analizowania. Ta funkcja zostanie usunięta.
http/tests/security/contentTypeOptions/xml-external-entity.xml zawiera
przykład: encje zewnętrzne można zdefiniować w końcowej części instrukcji DOCTYPE
i odwoływać się do zasobów, które są synchronicznie wczytywane i dołączane jako
kontekst podczas analizowania XML-a.
Inny przykład składni to DOCTYPE, który za pomocą słowa kluczowego SYSTEM i adresu URL wskazującego DTD zawiera dodatkowe definicje encji.
Takie żądania wczytywania zewnętrznego są przekazywane z analizatora.
Zgodnie ze specyfikacją XML W3C, procesory nie sprawdzające poprawności nie muszą odczytywać encji zewnętrznych.
Zespół planuje wycofać wczytywanie definicji encji zewnętrznych w dokumentach XML, które nie używają XSLT.