Chrome 118 w wersji beta

Określanie zakresu stylów CSS, dodatkowe funkcje multimedialne, kontenery przewijania z możliwością zaznaczenia za pomocą klawiatury i inne funkcje.

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

CSS

W tej wersji dodaliśmy 4 nowe funkcje CSS.

Style objęte zakresem

Reguła @scope umożliwia programistom określanie zakresu reguł stylów pod kątem danego pierwiastka zakresu i stylizowanie elementów zgodnie z przyleganiem do tego pierwiastka zakresu.

Wartości logiczne zależne od przepływu CSS

Dodaje te nowe wartości do istniejących właściwości CSS:

  • float: inline-start
  • float: inline-end
  • clear: inline-start
  • clear: inline-end
  • resize: block
  • resize: inline

Te zależne od przepływu słowa kluczowe kierunkowe przyjmują wartość fizyczną w zależności od trybu i kierunku pisania elementu bądź jego bloku.

Zapytania o multimedia: preferowana funkcja o zmniejszonej przezroczystości

Dodaje prefers-reduced-transparencyfunkcję multimediów, która umożliwia deweloperom dostosowywanie treści internetowych do preferencji wybranych przez użytkownika w celu zmniejszenia przezroczystości systemu operacyjnego, takich jak ustawienie Zmniejsz przezroczystość w systemie macOS. Prawidłowe opcje to reduce lub no-preference.

Obsługują elementy stylu CSS-box, content-box i frame-box we właściwości CSS „transform-box”.

Dodanie tej opcji obsługi pozwala zmienić sposób obliczania pola referencyjnego dla właściwości transform. Pozwala to włączyć dodatkowe przekształcenia lub efekty graficzne. Na przykład obrót wokół punktu w polu treści, w którym szerokość obramowania elementu nie wpływa na wynik. Dotyczy sytuacji, w której kreski elementu (SVG) powinny mieć wpływ na wynik, na przykład podczas obracania pociągnięcia wokół jego środka, łącznie z kreską.

HTML

Kontenery przewijania z możliwością zaznaczenia za pomocą klawiatury

Poprawia dostępność, ponieważ umożliwia zaznaczenie kontenerów przewijania za pomocą sekwencyjnej nawigacji zaznaczenia. Przed tą zmianą klawisz Tab nie umożliwia zaznaczenia przewijania, chyba że tabIndex ma jednoznacznie wartość 0 lub większą. Dzięki temu, że użytkownicy, którzy nie mogą (lub nie chcą) używać myszy, mogą otwierać obcięte treści za pomocą klawisza Tab i klawiszy strzałek. Nie dotyczy to przewijaków zawierających elementy, które można zaznaczyć za pomocą klawiatury, ponieważ są one już dostępne na klawiaturze.

Usuń działanie trybu osobliwości dla atrybutu etykiety opcji

Elementy opcji obsługują atrybut label, który powoduje, że opcja jest renderowana z tekstem wewnątrz atrybutu, a nie z tekstem podrzędnym samego elementu opcji. Ta funkcja jest wyłączona w trybie osobliwości, w którym atrybut etykiety jest ignorowany, a tekst podrzędny jest zawsze renderowany. Ta zmiana będzie zawsze korzystać z atrybutu label zarówno w trybie standardowym, jak i trybie osobliwości.

Internetowe interfejsy API

Rejestracja w Piaskownicy prywatności (PSB)

Ponieważ interfejsy API trafności i pomiarów w Piaskownicy prywatności stają się powszechnie dostępne, chcemy mieć pewność, że te technologie są wykorzystywane zgodnie z oczekiwaniami i w przejrzysty sposób. Do interfejsów API należą: Attribution Reporting, Protected Audience API, Topics API, Private Aggregation API i Shared Storage API. PSB wprowadza nowy proces rejestracji deweloperów w zakresie interfejsów API trafności i pomiarów w Piaskownicy prywatności. Chrome pobierze listę zarejestrowanych witryn z serwera rejestracji (za pomocą aktualizatora komponentów) i użyje jej do zablokowania dostępu do interfejsów API Piaskownicy prywatności.

Blokuj wszystkie pliki cookie ustawiane za pomocą JavaScriptu, które zawierają znaki kontrolne

Aktualizuje sposób obsługi znaków sterujących w plikach cookie ustawianych przez JavaScript. Konkretnie wszystkie znaki kontrolne powodują odrzucenie całego pliku cookie. Wcześniej znak NULL, znak powrotu karetki lub znak początku wiersza w wierszu pliku cookie powodował, że został on obcięty, a nie odrzucony, co w pewnych okolicznościach mogło umożliwiać złośliwe zachowanie. To działanie dostosowuje Chrome do sposobu działania zgodnego z najnowszymi wersjami dokumentu RFC6265bis. Tę zmianę można wyłączyć za pomocą zasady korporacyjnej --disable-features=BlockTruncatedCookies lub BlockTruncatedPliki cookie, która będzie obowiązywać przez kilka etapów na wypadek, gdyby zmiana spowodowała jakiekolwiek problemy.

Spójny minimalny rozmiar czcionki we wszystkich językach

Zmienia domyślne ustawienie minimalnego rozmiaru czcionki na 7 języków (arabskiego, perskiego, japoński, koreański, tajski, uproszczony i tradycyjny), aby poprawić interoperacyjność i ułatwienia dostępu. Przed tą zmianą to ustawienie było domyślnie wyłączone dla wszystkich języków z wyjątkiem siedmiu języków z listy. Ta zmiana sprawi, że te języki będą spójne z innymi. Uwaga: nie chodzi o samą zmianę funkcji minimalnego rozmiaru czcionki. Nie wpłynie to na ułatwienia dostępu i czytelność.

Wykrywanie przejść w UA podczas nawigacji w tym samym dokumencie

Płynne przejścia wizualne podczas korzystania z internetu mogą zmniejszyć obciążenie poznawcze, ponieważ pomaga im pozostać w kontekście. Jeśli jednak zarówno autor witryny, jak i UA dodają takie przejścia, mogą one powodować konflikt i dezorientować użytkownika. Ten interfejs API unika takich przypadków, aby mieć pewność, że w danym momencie wykonywane jest tylko jedno przejście wizualne. Interfejs API dodaje do elementów PopStateEvent i NavigateEvent wartość logiczną, która wskazuje, czy UA wykonał(a) wizualne przejście do tej nawigacji. Deweloperzy mogą użyć tych informacji, aby pominąć niestandardowe przejście.

Parser adresów URL nie będzie dekodować znaków ASCII zakodowanego procentowo w ścieżce adresu URL.

Powoduje to, że parser adresów URL nie dekoduje zakodowanych procentowo znaków ASCII w ścieżce adresu URL, np. „%41” („A”). Przed tą zmianą:

const url = new URL("http://example.com/%41");
url.href "http://example.com/A" 

Po tej zmianie:

const url = new URL("http://example.com/%41"); 
url.href "http://example.com/%41"

Kierowanie wykluczające w ramach Protected Audience API

W przypadku aukcji reklam online dla przestrzeni reklamowej czasami warto zapobiec wyświetlaniu reklamy określonym odbiorcom. Jest to tzw. kierowanie wykluczające. Na przykład nie chcesz wyświetlać reklamy nowym klientom obecnym klientom. Jest to często wymagane w kampaniach nastawionych na pozyskiwanie nowych klientów. Obecnie funkcja Protected Audience umożliwia kierowanie reklam na użytkowników, którzy zostali dodani do określonej grupy zainteresowań na podstawie wcześniejszej aktywności w internecie. Ta funkcja poszerza zakres Protected Audience o uwzględnianie kierowania wykluczającego, zezwalając nowym reklamom na kierowanie reklam tylko na tych użytkowników, którzy nie zostali dodani do danej grupy zainteresowań. W ten sposób umożliwiamy reklamodawcom kierowanie reklam na nowe grupy użytkowników za pomocą dotychczasowych koncepcji interfejsu Protected Audience API, które chronią prywatność.

Usuń wymóg aktywacji użytkownika Centrum płatności

Aby pomóc deweloperom w usprawnieniu procesów związanych z prośbami o płatność, usuwamy wymaganie dotyczące aktywacji użytkownika w sekcjach Żądanie płatności i Potwierdzenie bezpiecznej płatności. W ramach tej zmiany wprowadziliśmy środki łagodzące ryzyko związane ze spamem i przechwytywaniem kliknięć, które mają na celu zniwelowanie zagrożenia dla bezpieczeństwa i prywatności.

WebUSB w instancjach service worker rozszerzeń

Zezwala programistom stron internetowych na używanie interfejsu WebUSB API podczas odpowiadania na zdarzenia rozszerzeń przez ujawnianie interfejsu WebUSB API robotom Service Worker zarejestrowanym przez rozszerzenia przeglądarki. Ten interfejs API nie jest obecnie dostępny dla skryptów service worker zarejestrowanych przez witryny.

Dokumenty XML scalają następujące po sobie sekcje CDATA w jeden węzeł

Z powodu błędu w bibliotece libxml sekcje CDATA w dokumencie XHTML mogą czasami powodować błędne utworzenie wielu węzłów, w zależności od rozmiaru dokumentu i położenia sekcji CDATA w dokumencie. Gdy pojedyncza sekcja CDATA obejmuje wiele wejściowych fragmentów parsera, bufor libxml buforuje i emituje dane wejściowe CDATA do 300-bajtowych uruchomień. Powoduje to nieoczekiwanie przekształcenie pojedynczej sekcji CDATA w wiele węzłów (jeśli długość fragmentu wejściowego przekracza 300 bajtów). Ta zmiana powoduje scalanie równorzędnych węzłów sekcji CDATA w jedną sekcję CDATA podczas analizy. Ta czynność usuwa błąd w pliku libxml podczas analizy, ale jednocześnie scala utworzone odrębne węzły, na przykład: <![CDATA[foo]]><!CDATA[bar]]> spowoduje utworzenie pojedynczego węzła DOM CDATA o zawartości "foobar": CDATA "foobar".

Zmień warunek okna modułu obsługi przedunload

Wprowadziliśmy 2 zmiany w sposobie wyświetlania monitów dotyczących zdarzenia beforeunload w oknie anulowania.

Jeśli wywołana jest metoda event.preventDefault(), pojawi się okno anulowania. Jeśli event.returnValue jest pustym ciągiem znaków, nie pytaj okna anulowania.

Testowanie origin w toku

W Chrome 118 możesz włączyć tę wersję próbną

Przekształcenie zakodowane w WebRTC: modyfikowanie funkcji metadanych

Dodaje funkcje do interfejsu WebRTC Encoded Transform API, które umożliwiają manipulowanie metadanymi ramki audio i wideo. Wykryliśmy kilka przypadków użycia, w których trzeba manipulować multimediami zakodowanymi w WebRTC bez ich wcześniejszego dekodowania. m.in.:

  • wysyłanie danych, które zostały wcześniej zakodowane.
  • Wysyłanie zakodowanych danych.
  • Odbieranie danych w zakodowanej formie i ich przekazywanie.

W szczególności chcemy wykorzystać przypadek bezproblemowego przekazywania multimediów pochodzących z wielu nadmiarowych połączeń peera, które udostępniają te same ładunki multimedialne, ale z różnymi metadanymi.

Zarejestruj się na test origin RTCEncodedFrameSetMetadata.

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 nie ma tej funkcji.

Usunięcie niektórych niestandardowych słów kluczowych

W Chrome 118 niestandardowe słowa kluczowe dostępne w wersji appearance, które mają najniższy poziom użycia, zostaną dezaktywowane. Po wyłączeniu tej funkcji właściwość wyglądu będzie ignorowana, jeśli użyje tego słowa kluczowego jako wartości. W Chrome 118 wyłączamy słowa kluczowe, które są używane mniej niż 0,001%.

  • media-slider
  • media-sliderthumb
  • media-volume-slider
  • media-volume-sliderthumb
  • sliderthumb-horizontal
  • sliderthumb-vertical

Wprowadzenie

Obsługiwane powinny być tylko standardowe słowa kluczowe z kategorii appearance, dlatego usuwamy niestandardowe słowa kluczowe (appearance oraz -webkit-appearance). Oto pełna lista:

  • inner-spin-button
  • media-slider
  • media-sliderthumb
  • media-volume-slider
  • media-volume-sliderthumb
  • push-button
  • searchfield-cancel-button
  • slider-horizontal
  • sliderthumb-horizontal
  • sliderthumb-vertical
  • square-button

Zwróć uwagę, że wartość slider-vertical nie zostanie usunięta w ramach tej poprawki, ponieważ jest używana na potrzeby kategorii <input type=range>. Zostanie on usunięty po pełnym wdrożeniu pionowego trybu pisania elementów sterujących formularza.

Jeśli przed dezaktywacją użyjesz dowolnego z powyższych słów kluczowych, w konsoli wyświetli się ostrzeżenie, ale zostanie ono rozpoznane jako prawidłowa wartość.