Data wydania stabilnej wersji: 15 października 2024 r.
O ile nie zaznaczono inaczej, poniższe zmiany dotyczą wersji 130 Chrome na kanale stabilnym na Androida, ChromeOS, Linuxa, macOS i Windowsa.
CSS
Zapytania dotyczące kontenera CSS – proste wyszukiwanie drzewa
Specyfikacja zapytań dotyczących kontenera została zmieniona tak, aby wyszukać płaskie elementy nadrzędne drzewa.
Ta zmiana ma znaczenie tylko w przypadku DOM-u cieniowanego, w którym element będzie teraz mógł widzieć beznazwane kontenery wewnątrz drzew cieniowanych, w których znajduje się element lub jeden z jego przodków, nawet jeśli reguła CSS nie używa ::part()
ani ::slotted()
.
Śledzenie błędu #340876720 | Wpis na stronie ChromeStatus.com | Specyfikacja
Zagnieżdżanie kodu CSS: reguła dotycząca zagnieżdżonych deklaracji
Zachowuje deklaracje bez nazwy po regułach zagnieżdżonych, umieszczając je w regułach CSSNestedDeclarations
podczas analizowania.
Ulepszenie zagnieżdżania kodu CSS dzięki elementom CSSNestedDeclarations | Wpis na stronie ChromeStatus.com
Pełna obsługa box-decoration-break
bez prefiksu
Dodano obsługę box-decoration-break: clone
zarówno w przypadku podziału wbudowanego (układ wierszowy), jak i podziału blokowego (podział na strony w przypadku drukowania i wielu kolumn).
Wcześniej w Chrome do fragmentacji bloków obsługiwana była tylko wartość box-decoration-break:slice
(wartość początkowa), natomiast do fragmentacji w wierszu obsługiwana była wartość box-decoration-break:clone
, ale tylko przy użyciu właściwości z prefiksem -webkit-box-decoration-break
.
Właściwość box-decoration-break w Chrome 130 | Śledzenie błędu #41295617 | Wpis na stronie ChromeStatus.com | Specyfikacja
Zezwalanie na więcej pseudoelementów i pseudoklas po ::part()
Selektory CSS, które używają pseudoelementu ::part()
, mogą mieć po nich inne pseudoelementy CSS (z wyjątkiem ::part()
) oraz wiele typów innych pseudoklas CSS. Po ::part()
nadal nie można używać kombinatorów, a pseudoklasy zależne od struktury drzewa są niedozwolone.
Wcześniej Chrome zezwalał na użycie tylko ograniczonego zestawu pseudoklas i pseudoelementów po ::part()
. Ta zmiana zezwala na wszystkie pseudoklasy i pseudoelementy, które powinny być dozwolone. Oznacza to, że selektory takie jak ::part(part-name):enabled
i ::part(part-name)::marker
są teraz dozwolone.
Śledzenie błędu #40623497 | Wpis na stronie ChromeStatus.com | Specyfikacja
Interfejsy Web API
Transport słownika kompresji z udostępnionym Brotli i udostępnionym Zstandard
Ta funkcja dodaje obsługę używania wybranych poprzednich odpowiedzi jako słownika zewnętrznego do kodowania treści i kompresji odpowiedzi za pomocą Brotli lub Zstandard.
Firmy mogą napotkać potencjalne problemy ze zgodnością z infrastrukturą sieciową firmy, która przechwytuje ruch HTTPS i reaguje na nieznane kodowanie treści. Aby wyłączyć funkcję transportu słownika kompresji, możesz użyć zasady przedsiębiorstwa CompressionDictionaryTransportEnabled
.
Śledzenie błędu #40255884 | Wpis na stronie ChromeStatus.com | Specyfikacja
Równoległe wygładzanie scrollIntoView()
Metoda scrollIntoView()
z behavior: "smooth"
umożliwia tworzenie kontenerów przewijania, które przewijają się do swoich potomków za pomocą łagodnej animacji przewijania. Ta funkcja poprawia implementację interfejsu API w Chrome, dzięki czemu trwające animacje scrollIntoView
nie są anulowane przez niepowiązane przewijanie w innych kontenerach przewijania.
Ta funkcja rozwiązuje też problemy, które występują, gdy Chrome nie może przewinąć do fragmentu kotwicy na stronie z powodu konkurencyjnego elementu scrollIntoView
, który jest wywoływany podczas wczytywania strony.
Demonstracja | Błąd śledzenia #325081538 | Wpis ChromeStatus.com | Specyfikacja
Dokumentacja obrazu w oknie: dodanie opcji ignorowania pamięci podręcznej ograniczeń okna
Do interfejsu document picture-in-picture API zostanie dodany nowy parametr (preferInitialWindowPlacement
), który po ustawieniu na wartość true zasugeruje przeglądarce, że nie powinna ponownie używać pozycji ani rozmiaru poprzedniego dokumentu picture-in-picture z tej witryny podczas otwierania tej witryny.
Okno obrazu w obrazie dokumentu często zamyka się i otwiera ponownie kilka razy w przypadku tej samej witryny, np. podczas przenoszenia konferencji wideo do obrazu w obrazie i z niego. Przeglądarka może ponownie otworzyć okno PiP w ostatnim rozmiarze i miejscu, aby pozostało ono w miejscu, w którym użytkownik je ostatnio przeniósł, i aby zapewnić ciągłość między oknami PiP. Jeśli jednak nowe okno nie ma nic wspólnego z poprzednim, np. jest to nowe połączenie wideo, możesz użyć tego parametru, aby przekazać przeglądarce użytkownika podpowiedź, że okno powinno zostać otwarte w domyślnej pozycji i rozmiarze.
Dowiedz się, jak otworzyć okno w domyślnym położeniu i rozmiarze.
Obraz w obrazie dla każdego elementu, a nie tylko wideo | Wpis na stronie ChromeStatus.com | Specyfikacja
Ulepszone raportowanie błędów w IndexedDB w przypadku niepowodzenia odczytu dużych wartości
Zmiana w raportowaniu w przypadku niektórych błędów, które były wcześniej zgłaszane przy użyciu parametru DOMException
i komunikatu „Nie udało się odczytać dużej wartości IndexedDB”.
Chrome wywołuje teraz zdarzenie DOMException
o nazwie "NotFoundError"
, gdy na dysku brakuje pliku z danymi odczytywanymi przez IDBRequest. Dzięki temu witryny mogą podjąć odpowiednie działania naprawcze, gdy wystąpi nieodwracalne niepowodzenie. Działania naprawcze mogą obejmować usunięcie wpisu z bazy danych, powiadomienie użytkownika lub ponowne pobranie danych z serwerów.
Śledzenie błędu #362123231 | Wpis ChromeStatus.com | Specyfikacja
Kontenery z paskami przewijania, które można zaznaczyć za pomocą klawiatury
Dzięki tej funkcji suwaki bez elementów podrzędnych, które można zaznaczyć, są domyślnie możliwe do zaznaczenia za pomocą klawiatury.
To ważne ulepszenie, dzięki któremu osoby przewijające i treści w nich będą bardziej dostępne dla wszystkich użytkowników. Więcej informacji o jej zaletach znajdziesz w artykule Przewijane treści, które można zaznaczyć za pomocą klawiatury. Od wersji Chrome 130 elementy przewijające, które można zaznaczyć za pomocą klawiatury, będą domyślnie włączone. Jeśli witryny potrzebują czasu na dostosowanie się do tej nowej funkcji, masz kilka opcji:
- Wypróbuj wyłączenie skrótów klawiszowych do przewijania na stronie możesz użyć, aby na określony czas zrezygnować z funkcji na danej stronie. Można go używać do wersji 132 Chrome, która wygaśnie 18 marca 2025 r.
- Do tego samego celu można użyć
KeyboardFocusableScrollersEnabled enterprise policy
, które jest dostępne w Chrome 127.
Przewijane elementy, które można zaznaczyć za pomocą klawiatury | Błąd śledzenia nr 40113891 | Wpis ChromeStatus.com | Specyfikacja
Usługi określania stawek i usługi aukcyjne Protected Audience
Interfejs Protected Audience API (wcześniej FLEDGE) to propozycja Piaskownicy prywatności dotycząca remarketingu i niestandardowych grup odbiorców. Ma ona na celu uniemożliwienie stronom trzecim śledzenia zachowań użytkowników w różnych witrynach.
Ta funkcja, określanie stawek i usługi aukcyjne w ramach Protected Audience API, umożliwia przeprowadzanie obliczeń w ramach Protected Audience API na serwerach w chmurze w zaufanym środowisku wykonawczym, a nie lokalnie na urządzeniu użytkownika. Przeniesienie obliczeń na serwery w chmurze może pomóc w optymalizacji aukcji chronionych odbiorców, aby zwolnić cykle obliczeniowe i przepustowość sieci na urządzeniu.
Informacje na stronie ChromeStatus.com | Specyfikacja
Obsługa adresów URL z niespecjalnym schematem
Wcześniej parsujący adresy URL mechanizm Chrome nie obsługiwał adresów URL innych niż specjalne. Parsował on adresy URL inne niż specjalne tak, jakby miały „nieprzezroczystą ścieżkę”, co nie jest zgodne ze standardem adresów URL. Teraz analizator adresów URL w Chromium poprawnie analizuje adresy URL, które nie są adresami specjalnymi, zgodnie ze standardem adresów URL.
Obsługa adresów URL innych niż specjalne schematy | Błąd śledzenia #40063064 | Wpis ChromeStatus.com | Specyfikacja
Wbudowane ciągi znaków JavaScriptu w WebAssembly
Ta funkcja udostępnia typowe operacje na ciągach znaków JavaScript przy importowaniu do WebAssembly. Dzięki temu możesz tworzyć ciągi znaków JavaScript z WebAssembly i nimi manipulować bez obsługi w WebAssembly. Nadal zapewnia to podobną wydajność jak w przypadku obsługiwanych odwołań do ciągów znaków.
Informacje na stronie ChromeStatus.com | Specyfikacja
Web Serial: atrybuty connected
i zdarzenia związane z połączeniem RFCOMM
Ta funkcja dodaje logiczny atrybut SerialPort.connected
. Atrybut zwraca true
, jeśli port szeregowy jest logicznie połączony. W przypadku przewodowych portów szeregowych port jest logicznie połączony, jeśli jest fizycznie podłączony do systemu. W przypadku bezprzewodowych portów szeregowych port jest logicznie połączony, jeśli urządzenie hostujące port ma otwarte połączenia z hostem.
Wcześniej zdarzenia podłączania i rozłączania były wysyłane tylko przez przewodowe porty szeregowe. Dzięki tej funkcji porty szeregowe Bluetooth RFCOMM będą wysyłać te zdarzenia, gdy port zostanie logicznie połączony lub rozłączony.
Ta funkcja umożliwia aplikacjom wykrywanie, kiedy port szeregowy Bluetooth RFCOMM jest dostępny bez otwierania portu.
Więcej informacji znajdziesz w artykule Bluetooth RFCOMM updates in Web Serial (w języku angielskim).
Aktualizacje Bluetooth RFCOMM w Web Serial | Śledzenie błędu #40283485 | Wpis na stronie ChromeStatus.com | Specyfikacja
Renderowanie i grafika
WebGPU: łączenie dwóch źródeł
Dodaje opcjonalną funkcję GPU „podwójne mieszanie źródła”, która umożliwia połączenie 2 wyjściów do cieniowania fragmentów w jednym buforze klatek. Ta metoda jest szczególnie przydatna w aplikacjach wymagających złożonych operacji mieszania, np. opartych na trybach mieszania Porter-Duff. Dzięki temu, że nie trzeba często zmieniać obiektów stanu potoku, łączenie danych z dwóch źródeł może poprawić wydajność i elastyczność.
Śledzenie błędu #341973423 | Wpis na stronie ChromeStatus.com | Specyfikacja
Prywatność
Funkcja Attribution Reporting API (zakres atrybucji)
Ta zmiana jest podyktowana opiniami dotyczącymi technologii reklamowych i potrzebą bardziej szczegółowego filtrowania przed rozpoczęciem procesu atrybucji. Pozwala ona wywołującym interfejs API określić pole o nazwie „zakres atrybucji”, które będzie używane do filtrowania przed rozpoczęciem zwykłego przepływu atrybucji. Dzięki temu osoby wywołujące interfejs API mają większą kontrolę nad szczegółowością atrybucji i mogą otrzymywać odpowiednie raporty atrybucji, gdy wielu różnych reklamodawców lub kampanii realizuje konwersje w tej samej witrynie docelowej.
Informacja na stronie ChromeStatus.com
Funkcja interfejsu Attribution Reporting API (ulepszona ochrona prywatności klucza debugowania)
Ta zmiana pomaga ograniczyć potencjalne naruszenie prywatności za pomocą kluczy debugowania.
Obecnie interfejs API umożliwia określenie klucza debugowania źródła lub klucza debugowania wywołania, jeśli pliki cookie innych firm są dostępne i mogą być ustawiane przez wywołujących interfejs API. Jeśli zostanie podany klucz debugowania źródła lub reguły, zostanie on uwzględniony w raporcie atrybucji. Może to spowodować wyciek danych, jeśli pliki cookie innych firm są dozwolone tylko w witrynie wydawcy lub reklamodawcy, ale nie w obu.
Ta zmiana ogranicza ten problem, ponieważ klucze debugowania źródła i klucze debugowania wyzwalacza są uwzględniane w raporcie atrybucji tylko wtedy, gdy występują zarówno w źródle, jak i w wyzwalaczu. Oznacza to, że pliki cookie innych firm są dostępne zarówno w witrynie wydawcy, jak i w witrynie reklamodawcy. Ta zmiana będzie dotyczyć zarówno raportów na poziomie zdarzenia, jak i raportów podlegających agregacji.
Informacje na stronie ChromeStatus.com | Specyfikacja
Wersje próbne Origin
Interfejs Language Detector API
Interfejs JavaScript API do wykrywania języka, w jakim napisano tekst, z poziomami ufności.
Testowanie wersji Origin | Interfejs Language detection API dostępny w ramach wczesnej wersji zapoznawczej | Wpis na stronie ChromeStatus.com | Specyfikacja
WebAuthn attestationFormats
Obsługa pola attestationFormats
z poziomu 3 WebAuthn.
WebAuthn Level 3 obsługuje witrynę, która w nowym polu attestationFormats
podaje preferowane formaty uwierzytelniania. Ta funkcja umożliwia obsługę tego na Androidzie, gdzie dostawcy kluczy dostępu mogą obsługiwać wiele formatów.
Origin Trial | Informacje na stronie ChromeStatus.com | Specyfikacja
Wycofanie i usunięcie
Usuń expectedImprovement
w DelegatedInkTrailPresenter
Atrybut expectedImprovement
informuje programistów stron internetowych, o ile interfejs DelegatedInkTrails API poprawi ich obecne opóźnienie Ink. Jednak ten atrybut nie jest wart zwiększenia entropii odcisku palca.
Informacje na stronie ChromeStatus.com | Specyfikacja
Więcej informacji
Chcesz więcej? Zapoznaj się z dodatkowymi materiałami.
- Nowości w Chrome 130
- Nowości w Narzędziach deweloperskich w Chrome 130
- Aktualizacje ChromeStatus.com dotyczące Chrome 130
- Kalendarz wersji Chrome
- Nadchodzące wycofania
- Nadchodzące usunięcia