Data wydania stabilnej wersji: 4 marca 2025 r.
O ile nie zaznaczono inaczej, poniższe zmiany dotyczą wersji 134 przeglądarki Chrome w kanale stabilnym na Androida, ChromeOS, Linuxa, macOS i Windowsa.
HTML i DOM
Element niestandardowy <select>
Niestandardowe <select>
umożliwia programistom pełną kontrolę nad renderowaniem elementów <select>
dzięki dodaniu właściwości i wartości appearance: base-select
w CSS.
Ta funkcja korzysta z flagi SelectParserRelaxation
, która zmienia parser HTML, aby zezwolić na stosowanie większej liczby tagów w tagu <select>
.
Informacje o błędzie #40146374 | Informacje na stronie ChromeStatus.com | Specyfikacja
Wybierz opcję poluzowania parsera
Ta zmiana powoduje, że parser HTML zezwala na dodatkowe tagi w elemencie <select>
oprócz tagów <option>
, <optgroup>
i <hr>
.
Ta funkcja jest ograniczona przez tymczasową zasadę (SelectParserRelaxationEnabled
). Jest to tymczasowy okres przejściowy, a zasada przestanie obowiązywać od Chrome 141.
Jeśli masz problemy, które Twoim zdaniem są spowodowane tą zmianą, możesz wypróbować odwrotne pochodzenie, aby wyłączyć relaksację parsowania.
Informacje o błędzie #335456114 | Informacje na stronie ChromeStatus.com | Specyfikacja
Zamknij okno
Jedną z ciekawych funkcji interfejsu Popover API jest możliwość szybkiego zamknięcia.
To zachowanie jest teraz częścią <dialog>
, a nowy atrybut closedby
kontroluje to zachowanie:
<dialog closedby="none">
: nie ma możliwości zamknięcia okna dialogowego przez użytkownika.<dialog closedby="closerequest">
: naciśnięcie Esc (lub innego przycisku zamykania) powoduje zamknięcie okna<dialog closedby="any">
: kliknięcie poza oknem lub naciśnięcie Esc powoduje zamknięcie okna. Zachowanie podobne dopopover="auto"
.
Śledzenie błędu #376516550 | Wpis na stronie ChromeStatus.com | Specyfikacja
CSS
Dziedziczenie wyróżnienia CSS
Dzięki dziedziczeniu wyróżnienia CSS pseudoklasy CSS, takie jak ::selection
i ::highlight
, dziedziczą swoje właściwości z łańcucha wyróżnień pseudoklas, a nie z łańcucha elementów.
W efekcie otrzymujemy bardziej intuicyjny model dziedziczenia właściwości w podświetleniach.
PWA
Tytuł dokumentu (poprawka tytułów aplikacji PWA)
Ta funkcja umożliwia określenie dodatkowych informacji o bieżącym oknie zainstalowanej i uruchomionej aplikacji internetowej. Dodaje do strony podtytuł, aby wyświetlać informacje kontekstowe w pasku tytułu okna. Zastępuje tekst zawarty w elemencie tytułu HTML.
Informacje o błędzie #1351682 | Informacje na stronie ChromeStatus.com | Specyfikacja
Przechwytywanie linków użytkowników w aplikacjach PWA
Linki internetowe automatycznie kierują użytkowników do zainstalowanych aplikacji internetowych.
Aby lepiej dostosować się do oczekiwań użytkowników związanych z zainstalowanymi aplikacjami, Chrome ułatwia przełączanie się między przeglądarką a zainstalowanymi aplikacjami internetowymi.
Gdy użytkownik kliknie link, który może być obsługiwany przez zainstalowaną aplikację internetową, link zostanie otwarty w tej aplikacji.
Użytkownicy mogą zmienić to zachowanie w ustawieniach zainstalowanej aplikacji internetowej.
Deweloperzy mogą kontrolować to zachowanie za pomocą właściwości pliku manifestu launch_handler
. Więcej informacji o działaniu linków głębokich w zainstalowanych aplikacjach internetowych można znaleźć w dokumentacji dla deweloperów.
Informacja na stronie ChromeStatus.com
Wyniki
Document-Policy: expect-no-linked-resources
Punkt konfiguracji expect-no-linked-resources
w zasadach dotyczących dokumentu pozwala dokumentowi przekazać przeglądarce użytkownika wskazówkę, aby lepiej zoptymalizować kolejność wczytywania, np. nie używając domyślnego spekulatywnego parsowania.
W celu przyspieszenia wczytywania strony przeglądarki mają zaimplementowany spekulatywny parsing HTML, który spekulatywnie pobiera zasoby obecne w składni HTML. W przypadku większości stron internetowych, które mają zasoby zadeklarowane w znacznikach HTML, optymalizacja jest korzystna, a koszty związane z określeniem tych zasobów są rozsądnym kompromisem. Jednak w następujących przypadkach może wystąpić spadek wydajności w porównaniu z czasem poświęconym na parsowanie kodu HTML w celu określenia zasobów podrzędnych do pobrania:
- strony, które nie mają żadnych zasobów zadeklarowanych w HTML-u;
- Duże strony HTML z minimalnym lub zerowym wczytywaniem zasobów, które mogą wyraźnie kontrolować wstępne wczytywanie zasobów za pomocą innych dostępnych mechanizmów wstępnego wczytywania.
Dokument expect-no-linked-resources
Document-Policy zawiera wskazówki dla klienta użytkownika, aby mógł zoptymalizować czas poświęcony na określanie podzasobów.
Śledzenie błędu #365632977 | Wpis na stronie ChromeStatus.com | Spec
Wyraźne zarządzanie zasobami (asynchronicznie)
Te funkcje dotyczą typowego w rozwoju oprogramowania wzorca dotyczącego czasu trwania i zarządzania różnymi zasobami (np. pamięci i wejścia/wyjścia). Ten wzorzec obejmuje zwykle przydzielanie zasobu i możliwość jawnego zwalniania kluczowych zasobów.
Informacje o błędzie #42203814 | Informacje na stronie ChromeStatus.com | Specyfikacja
Zarządzanie zasobami (synchronizacja)
Te funkcje dotyczą typowego w rozwoju oprogramowania wzorca dotyczącego czasu trwania i zarządzania różnymi zasobami (np. pamięci i wejścia/wyjścia). Ten wzorzec obejmuje zwykle przydzielanie zasobu i możliwość jawnego zwalniania kluczowych zasobów.
Informacje o błędzie #42203506 | Informacje na stronie ChromeStatus.com | Specyfikacja
Rozszerzenie interfejsu API console.timeStamp
o obsługę pomiarów i opcji prezentacji
Rozszerza interfejs API console.timeStamp()
w sposób zapewniający zgodność wsteczną, aby oferować wydajną metodę instrumentowania aplikacji i wyświetlania danych o czasie w panelu Wydajność w Narzędziach dla programistów.
Elementy danych dotyczące czasu dodane za pomocą interfejsu API mogą mieć niestandardowy znacznik czasu, czas trwania i opcje wyświetlania (ścieżka, pas ruchu i kolor).
Interfejsy Web API
Zezwalanie na odczyt grup zainteresowań w worklecie Shared Storage
Dodaj do workletu wspólnego miejsca na dane metodę interestGroups()
, aby zwrócić grupy zainteresowań chronionej publiczności powiązane z właścicielem źródła wspólnego miejsca na dane, wraz z dodatkowymi metadanymi.
Ten interfejs API zapewnia kupującemu korzystającemu z list odbiorców opartych na Protected Audience lepszy obraz tego, co dzieje się z jego użytkownikami, i umożliwia generowanie raportów prywatnej agregacji.
Informacja na stronie ChromeStatus.com
Funkcja raportowania atrybucji: usuwanie limitu raportów możliwych do agregacji, gdy identyfikator kontekstu reguły nie jest równy null
Ta zmiana została wprowadzona na podstawie opinii wywołujących interfejs API oraz potrzeby zmierzenia większej liczby zdarzeń konwersji w przypadku niektórych ścieżek użytkownika.
Obecnie interfejs API ma limit, który pozwala na wygenerowanie maksymalnie 20 raportów możliwych do zsumowania na rejestrację źródła. Jest to ograniczenie w przypadkach, gdy użytkownik może mieć dłuższą ścieżkę. Ta zmiana usuwa limit raportów możliwych do agregacji, gdy w ramach rejestracji podano identyfikator kontekstu reguły. Usunięcie tego limitu jest możliwe tylko wtedy, gdy podano identyfikator kontekstu reguły, ponieważ w takim przypadku interfejs API stosuje większą częstotliwość raportów o wartości null, co pomaga chronić przed wyciekiem informacji z różnych witryn przez liczbę raportów.
Dodatkowo raporty podlegające agregacji będą nadal podlegać innym ograniczeniom, które ograniczają łączną ilość informacji, które można mierzyć,np. budżet udziału w L1 (65 536) na źródło i limit współczynnika atrybucji.
Informacja na stronie ChromeStatus.com
Łagodzenie śledzenia przekierowań w pamięci podręcznej HTTP
Łagodzenie śledzenia przekierowań w przypadku pamięci podręcznej HTTP jest rozszerzeniem dotychczasowego działania funkcji zapobiegania śledzenia przekierowań. Usuwamy wymóg, że podejrzane witryny śledzące muszą mieć dostęp do pamięci, aby aktywować środki zapobiegające śledzeniu powrotów.
Zaproponowane przez Chrome rozwiązanie zmierzające do ograniczenia śledzenia powrotów uruchamia się, gdy witryna uzyskuje dostęp do pamięci przeglądarki (np. do plików cookie) podczas przekierowania. Jednak liczniki odrzuceń mogą systematycznie obchodzić takie środki zaradcze, korzystając z pamięci podręcznej HTTP do przechowywania danych. Zmniejszając warunki uruchamiania działań zapobiegających powrotowi, przeglądarka powinna być w stanie wykrywać liczniki powrotów za pomocą pamięci podręcznej HTTP.
Śledzenie błędu #40264244 | Informacja na stronie ChromeStatus.com | Specyfikacja
Wykrywanie na urządzeniu powiadomień wprowadzających w błąd na Androidzie za pomocą LLM
Celem tej aktualizacji jest ukrywanie treści powiadomień, które mogą zawierać nadużycia. Użytkownik będzie mógł odrzucić powiadomienie, wyświetlić je lub anulować subskrypcję źródła. Wykrywanie ma być wykonywane przez model na urządzeniu.
Informacja na stronie ChromeStatus.com
OffscreenCanvas
getContextAttributes
Dodaj interfejs getContextAttributes
z CanvasRenderingContext2D
do OffscreenCanvasRenderingContext2D
.
Śledzenie błędu #388437261 | Wpis na stronie ChromeStatus.com | Specyfikacja
Interfejs Private Aggregation API: limity udziału na kontekst dla wywołujących Shared Storage
Umożliwia wywołującym pamięć współdzieloną dostosowywanie liczby wkładów na raport prywatny.
Ta funkcja umożliwia wywołującym Shared Storage konfigurowanie limitów udziału w ramach kontekstu za pomocą nowego pola maxContributions
. W tym polu wywołujący mogą zastąpić domyślną liczbę udziałów na raport – dozwolone są zarówno większe, jak i mniejsze wartości. Chrome akceptuje wartości maxContributions
w zakresie od 1 do 1000 włącznie; większe wartości są interpretowane jako 1000.
Ze względu na wypełnienie rozmiar ładunku każdego raportu będzie mniej więcej proporcjonalny do wybranej liczby źródeł na raport. Spodziewamy się, że udostępnienie większych raportów zwiększy koszty obsługi usługi agregacji.
Ta funkcja nie ma wpływu na wywołania z poziomu Protected Audience. W przyszłości planujemy jednak dodać obsługę dostosowywania liczby źródeł danych w raportach dotyczących chronionych odbiorców.
Śledzenie błędu #376707230 | Wpis na stronie ChromeStatus.com | Specyfikacja
Obsługa interfejsu Web Locks API w Shared Storage
Interfejs Web Locks API jest zintegrowany z Shared Storage. Zapobiega to sytuacjom, w których pomiar zasięgu w wielu witrynach może prowadzić do powielania się danych w raportach z powodu potencjalnych warunków wyścigu w logice get()
i set()
.
Ta zmiana:
- Wprowadza
navigator.locks.request
do środowiska workletu. - Wprowadza opcję
{ withLock: <resource>}
do wszystkich metod modyfikatorów. - Wprowadza metodę zbiorczej modyfikacji:
sharedStorage.batchUpdate(methods, options)
. Ta metoda, z opcjąwithLock
, umożliwia wykonywanie wielu metod modyfikatora w sposób atomowy, co umożliwia stosowanie w przypadkach, gdy witryna musi zachowywać spójność podczas aktualizowania danych uporządkowanych według wielu kluczy.
Informacja o błędzie: #373899210 | Informacja na stronie ChromeStatus.com
Renderowanie i grafika
Pomoc: ImageSmoothingQuality
w PaintCanvas
Dodaliśmy obsługę atrybutu imageSmoothingQuality
w Paint Canvas.
Dzięki temu możesz wybrać kompromis między jakością a wydajnością podczas skalowania obrazów.
W przypadku imageSmoothingQuality
dostępne są 3 opcje: low
, medium
i high
.
Śledzenie błędu #None | Informacja na stronie ChromeStatus.com | Specyfikacja
Podgrupy WebGPU
Dodaje funkcję podgrup do WebGPU. Operacje podgrupy wykonują operacje SIMT, aby zapewnić skuteczną komunikację i udostępnianie danych między grupami wywołań. Te operacje mogą służyć do przyspieszania aplikacji przez zmniejszenie obciążenia pamięci spowodowanego komunikacją między wywołaniami.
Wersje próbne Origin
Digital Credential API
Witryny mogą i w pewnym zakresie uzyskują dane logowania z aplikacji mobilnych portfeli za pomocą różnych mechanizmów, takich jak niestandardowe moduły obsługi adresów URL i skanowanie kodów QR. Ta funkcja umożliwia witrynom żądanie informacji o tożsamości z portfeli za pomocą systemu IdentityCredential
CredMan
na Androidzie. Jest on rozszerzalny, aby obsługiwać wiele formatów danych logowania (np. ISO mDoc i weryfikowalne dane logowania W3C) oraz umożliwia korzystanie z wielu aplikacji portfeli. Dodawane są mechanizmy, które mają zmniejszyć ryzyko nadużyć tożsamości w całym ekosystemie.
Wersja próbna dla dostawców usług, która zaczyna się od Chrome 134, dodaje obsługę tego interfejsu API na platformie komputerowej. Chrome na komputerze będzie bezpiecznie komunikować się z cyfrowym portfelem na telefonie z Androidem, aby pobrać żądane dane logowania.
Testowanie wersji Origin | Śledzenie błędu #40257092 | Wpis na stronie ChromeStatus.com | Specyfikacja
Przywrócenie wycofanej funkcji SelectParserRelaxation
To test wycofywania, który ponownie włącza stare zachowanie parsera do parsowania tagów <select>
. W ramach tego starego zachowania nieobsługiwane treści są po cichu odrzucane i nie są uwzględniane w treści DOM pod elementem <select>
. Z tej wersji próbnej można skorzystać, jeśli nowe zachowanie włączone w Chrome 135 powoduje błąd w witrynie.
Test wersji Origin | Informacja na stronie ChromeStatus.com
Wycofanie i usunięcie
Usuwanie niestandardowych ograniczeń getUserMedia
dotyczących dźwięku
Blink obsługuje wiele niestandardowych ograniczeń z prefiksem goog
dla getUserMedia
od czasu, gdy ograniczenia zostały właściwie ujednoliczone.
Korzystanie z nich znacznie spadło do 0,000001–0,0009% (w zależności od ograniczenia), a niektóre z nich nie mają żadnego wpływu ze względu na zmiany w zestawie do przechwytywania dźwięku w Chromium. Wkrótce żadna z nich nie będzie miała znaczenia z powodu innych nadchodzących zmian.
Nie spodziewamy się, aby ta zmiana spowodowała jakiekolwiek poważne regresje. Aplikacje korzystające z tych ograniczeń będą nadal działać, ale będą odtwarzać dźwięk z ustawieniami domyślnymi (jakby nie było żadnych ograniczeń). Mogą one przejść na standardowe ograniczenia.
Śledzenie błędu #377131184 | Informacja na stronie ChromeStatus.com | Spec