Chrome 112 w wersji beta

Zagnieżdżanie CSS, animacja-kompozycji i parametr przesyłającego dla konstruktora FormData.

O ile nie zaznaczono inaczej, zmiany opisane poniżej dotyczą najnowszych wersji beta Chrome na Androida, ChromeOS, Linux, macOS i Windows. Dowiedz się więcej o funkcjach wymienionych tutaj, korzystając z podanych linków lub z listy na ChromeStatus.com. Od 9 marca 2023 r. Chrome 112 jest w wersji beta. Najnowsze aktualizacje możesz pobrać z Google.com na komputer lub ze Sklepu Google Play na Androida.

CSS

Zagnieżdżanie CSS

Możliwość zagnieżdżania reguł stylów CSS w innych regułach stylów, łącząc selektory z zewnątrz z regułą wewnętrzną, aby zwiększyć modułowość i łatwość obsługi arkuszy stylów. Więcej informacji znajdziesz w tym artykule o zagnieżdżaniu arkuszy CSS.

Właściwość CSS animation-composition

Właściwość animation-composition umożliwia specyfikację operacji złożonej, gdy na tę samą właściwość wpływa jednocześnie wiele animacji. Zobacz przykład w tej wersji demonstracyjnej

Internetowe interfejsy API

Pasek informacyjny „Załaduj ponownie tę stronę” nie jest już widoczny, jeśli ramka najwyższego poziomu obserwuje zmiany uprawnień

Pomija pasek informacyjny „Załaduj ponownie tę stronę”, jeśli ramka najwyższego poziomu jest subskrybowana na zdarzenie onchange PermissionStatus, które jest traktowane jako sygnał, że aplikacja chce dynamicznie reagować na zmiany uprawnień dostępu do aparatu lub mikrofonu zainicjowane w oknie z informacjami o stronie. Niezależnie od obecności odbiornika, dotychczasowe działanie pozostaje niezmienione – strumienie multimediów są przerywane natychmiast po anulowaniu uprawnień.

Dodaj do konstruktora FormData opcjonalny parametr przesyłającego

Umożliwia przekazanie przycisku przesyłania do konstruktora FormData. Jeśli przycisk ma nazwę lub jest przyciskiem graficznym, będzie miał wpływ na zbiór danych formularza. Umożliwia to utworzenie obiektu FormData z tym samym zbiorem danych co przesłany formularz waniliowy wywołany przez przycisk.

Flaga v wyrażeń regularnych z ustawionym notacją i właściwościami ciągów znaków

Można dodawać operacje zbiorów, literały ciągu znaków, zagnieżdżone klasy i właściwości Unicode ciągów do klas znaków w wyrażeniach regularnych. Ustawianie operacji i właściwości Unicode ciągów pozwala programistom łatwo tworzyć wyrażenia regularne pasujące do ciągów o określonych znakach Unicode.

Na przykład:/[\p{Script_Extensions=Greek}&&\p{Letter}]/v odpowiada wszystkim literom greckim.

Zaktualizowano algorytm początkowego zaznaczenia w trybie <dialog>

Wprowadziliśmy kilka zmian w tym, który element jest wybierany do zaznaczenia po otwarciu elementu <dialog>:

  • Zadbaj o to, aby kroki skupienia w oknie skupiały się na elementach, które można zaznaczyć na klawiaturze, a nie na takich, które można zaznaczyć.
  • Aktywuje sam element okna, jeśli ma ustawiony atrybut autofokusa.
  • Aktywuje sam element okna jako funkcję zastępczą, a nie resetowanie elementu „body”.

Wywołanie końcowe WebAssembly

Dodaj do obiektu WebAssembly jawne i pośrednie wywołania ogonowe.

Zdarzenie kontekstowe WebGL w instancjach roboczych

Typ WebGLContextEvent jest zdefiniowany w specyfikacji WebGL firmy Khronos przez wiele lat, ale do niedawna nie stwierdzono, że w blinku ten typ nie jest dostępny dla pracowników sieciowych.

Większość aplikacji po prostu dodaje detektor zdarzeń dla danego typu i nie szuka jego prototypu w zakresie globalnym. Jest to prosta poprawka błędu dostawcy usług internetowych Blink dla WebGLContextEvent, ale zmiana ta jest widoczna w internecie.

Pomiń moduł obsługi bez operacji pobierania skryptu service worker

Ta funkcja przyspiesza nawigację na stronach z mechanizmami pobierania przez skrypt service worker bez działania przez ich pomijanie.

Niektóre witryny mają odbiornik pobierania bez działania (np. onfetch = () => {}). Detektor pobierania jest jednym z wymagań progresywnej aplikacji internetowej (PWA), więc zakładamy, że dzięki temu witryna została rozpoznana jako PWA. Generuje jednak jedynie narzut i uruchamia skrypt service worker, a następnie wykonuje detektor braku operacji. Nie wiążą się z tym żadne korzyści związane z funkcjami, takimi jak zapisywanie w pamięci podręcznej czy funkcje offline, ponieważ kod nic nie robi.

Aby przyspieszyć nawigację do takich stron, od Chrome 112 będziemy pomijać uruchamianie skryptu service worker i wysyłanie przez detektor na ścieżce krytycznej nawigacji, jeśli klient użytkownika zidentyfikuje, że wszystkie detektory pobierania uruchomione przez skrypt service worker nie działają.

W ramach tej zmiany Chromium będzie wyświetlać ostrzeżenia w konsoli, jeśli wszystkie odbiorniki pobierania skryptu service worker nie działają, i zachęcić programistów do usunięcia bezużytecznych detektorów pobierania. Mamy nadzieję, że witryny przestaną korzystać z bezużytecznych detektorów pobierania i będziemy w przyszłości wycofać tę funkcję.

Akceptuj kodowanie: br (Brotli) przy połączeniu HTTPS w komponencie WebView

Brotli (typ kodowania treści: br) to ogólny algorytm kompresji bezstratnej, który oferuje bardziej gęstą kompresję przy współczynniku kompresji i szybkością porównywalną z najlepszymi obecnie dostępnymi metodami kompresji ogólnymi (szczegóły znajdziesz na stronach google/brotli i RFC 7932).

Chociaż typ kodowania treści HTTP na potrzeby Brotli (Accept-Encoding: br) był obsługiwany w wersji 50 w Chrome, do tej pory nie był on włączony w komponencie WebView. Ta funkcja będzie wdrażana stopniowo, aby zapewnić stabilność, i będzie dostępna dla 50% użytkowników korzystających z komponentu WebView w wersji beta.

Testowanie origin w toku

W Chrome 112 możesz włączyć te testy origin.

FedCM: interfejs API automatycznego ponownego uwierzytelniania

Najnowsza wersja FedCM zawiera funkcję automatycznego ponownego uwierzytelniania, która umożliwia automatyczne uwierzytelnianie użytkowników, gdy wracają oni po pierwszym uwierzytelnieniu za pomocą FedCM.

Obecnie, gdy użytkownik utworzy przez FedCM konto sfederowane w obrębie objętej ograniczeniami u dostawcy tożsamości (dostawcy tożsamości) przy następnej wizycie na stronie, będzie musiał wykonać te same czynności w interfejsie. Oznacza to, że aby kontynuować proces logowania, muszą wyraźnie potwierdzić swoją tożsamość i jeszcze raz ją uwierzytelnić. Jednym z głównych celów FedCM jest zapobieganie tajnemu śledzeniu – takie wrażenia użytkownika mają sens, zanim użytkownik utworzy sfederowane konto, ale gdy już raz je przejrzy, staje się on niepotrzebne i niewygodne w użyciu. Właśnie dlatego Chrome wprowadza usprawniony interfejs, który RP mogą wybrać dla powracających użytkowników.

Zarejestruj się, aby skorzystać z testu źródła automatycznego ponownego uwierzytelniania w FedCM

Okres próbny wycofania

Metoda getStats() obiektu RTCPeerConnection nie będzie już zwracać obiektów statystyk, gdzie type == "track" lub "stream". Ta funkcja została usunięta w Chrome 112. Włącz tę wersję próbną, aby mieć więcej czasu na wprowadzenie niezbędnych zmian.

Zarejestruj się, aby skorzystać z okresu próbnego wycofywania

Wycofanie żądania X-Requested-With w komponencie WebView

Testowanie źródła wycofywania obsługuje wstępne zatwierdzanie z innych domen w przypadku wywoływania usług korzystających z nagłówka X-Requested-With. Ta opcja jest dostępna w komponencie WebView od Chrome 112. Aby dowiedzieć się, jak korzystać z tej funkcji, zapoznaj się z instrukcjami konfigurowania wersji próbnej origin.

Zarejestruj się, aby wziąć udział w okresie próbnym wycofywania komponentu X-Requested z komponentu WebView.

Wycofania i usunięcia

W tej wersji Chrome wprowadziliśmy wymienione poniżej funkcje wycofywania i usuwania. Na stronie ChromeStatus.com znajdziesz listę planowanych wycofań, bieżących wycofań oraz poprzednich usunięć.

W tej wersji Chrome wycofujemy jedną funkcję.

Wycofaj ustawiający atrybut document.domain

Metoda ustawiająca document.domain pozwala deweloperom złagodzić zasadę dotyczącą tego samego pochodzenia, skomplikując podstawowe granice bezpieczeństwa, które chcemy utrzymać, i stawiać przeszkody na drodze do zmian post-Spectre w modelu procesów Chromium. Akceptacja jest teraz przeprowadzana przez klastry agentów ze źródłem jako kluczem.

W tej wersji Chrome usunięto jedną funkcję.

Usuń obiekty statystyk track i stream z metody getStats() RTCPeerConnection

Metoda getStats() obiektu RTCPeerConnection nie będzie już zwracać obiektów statystyk, gdzie type == "track" lub "stream". Niewycofane w Chrome 112 w ramach okresu próbnego (wyżej wymienionych powyżej), który pozwala rozszerzyć dostępność tych danych na Chrome 115.