Wiele słów kluczowych dla usługi displayowej CSS, WGSLLanguageFeatures dla WebGPU, uaktualnień HTTPS i nie tylko.
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 31 maja 2023 r. przeglądarka Chrome 115 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 3 nowe funkcje CSS.
Wiele wartości właściwości display
Właściwość CSS display
oprócz starszych wstępnie utworzonych słów kluczowych akceptuje teraz wiele słów kluczowych. Pierwsze 2 słowa kluczowe reprezentują wartości zewnętrzne i wewnętrzne związane z reklamą displayową. Istnieją opcjonalne flagi list-item
, wartości wewnętrzne, np. table-cell
, oraz wartości pól contents
i none
.
Za pomocą zewnętrznych i wewnętrznych słów kluczowych możesz określić działanie pola zewnętrznego (w bloku lub w tekście) i zachowania się wewnętrznych elementów podrzędnych, np. flex
, grid
lub flow
. Dlatego display: flex
zmienia się w display: block flex
, a display: block
zmienia się w display: block flow
. Listę typowych mapowań i inne informacje znajdziesz w MDN.
Zapytania dotyczące kontenera w kontekście logicznym
Chrome 115 obsługuje zapytania o kontenery style()
bez wartości deklaracji, a tylko nazwę właściwości na potrzeby dopasowywania wartości niepoczątkowych. Wcześniej należało użyć: not style(--my-property: initial)
. Teraz możesz użyć style(--my-property)
, aby dopasować dowolną wartość niepoczątkową.
Animacje przewijane
ScrollTimeline
i ViewTimeline
to rozszerzenie specyfikacji Animacji internetowych, które umożliwia programistom stosowanie pozycji rolki lub pozycji elementu w obszarze przewijającym jako wejściowego „czasu” zamiast domyślnego monotonnego czasu zegara. Pozwala to włączyć przyspieszone animacje przewijające się, takie jak zmniejszający się pasek nawigacyjny, bez konieczności wykonywania skryptu użytkownika. Można je deklarować i tworzyć zarówno w CSS i JavaScript, jak i w animacjach CSS i animacjach internetowych.
Więcej informacji znajdziesz w artykule o animowaniu elementów podczas przewijania za pomocą animacji przewijanych.
Poprawiono regresję, w wyniku której elementy z display: contents
nie były już wyświetlane w drzewie ułatwień dostępu
Wprowadzono regresję, która spowodowała, że elementy z atrybutem display: contents
utraciły informacje semantyczne i nie były już prawidłowo reprezentowane w drzewie ułatwień dostępu. Chrome 115 zawiera poprawkę tego problemu.
Internetowe interfejsy API
Zwiększenie maksymalnego rozmiaru elementu WebAssembly.Module()
w wątku głównym do 8 MB
Konstruktor WebAssembly.Module() synchronicznie kompiluje binarny moduł WebAssembly, co może zablokować wątek główny. Aby tego uniknąć, maksymalny rozmiar modułu WebAssembly, który można skompilować za pomocą tego konstruktora, jest ograniczony do 8 MB. Większe moduły można kompilować asynchronicznie w wątku głównym za pomocą funkcji WebAssembly.compile()
lub synchronicznie w wątku instancji roboczej. Limit 8 MB stanowi rozszerzenie pierwotnego limitu wynoszącego 4 KB. To rozszerzenie jest możliwe dzięki ulepszeniom w środowisku wykonawczym WebAssembly w wersji 8. Limit 8 MB został określony na podstawie pomiarów wydajności telefonu Google Pixel 1, który jest obecnie uważany za reprezentatywny telefon słabszej jakości. W przyszłości kolejne postępy w zakresie technologii V8 i sprzętu mogą pozwolić na dalsze wydłużenie limitu.
FedCM: wymagania dotyczące zapośredniczenia zarządzania danymi logowania w ramach pomocy w przypadku automatycznego ponownego uwierzytelniania
Obsługuje wymagania dotyczące zapośredniczenia zarządzania danymi logowania w celu usprawnienia procesu ponownego uwierzytelniania użytkowników, którzy utworzyli sfederowane konta w witrynach za pomocą interfejsu FedCM API.
Uaktualnienia HTTPS
Automatycznie i optymalnie uaktualniaj wszystkie elementy nawigacyjne na głównej podstawce do protokołu HTTPS i szybko przełączaj się na HTTP.
Partycjonowanie interfejsów API Storage, Service Worker i Communication
Aby zapobiec niektórym rodzajom śledzenia w witrynach w różnych kanałach, Chrome partycjonuje interfejsy API do komunikacji i pamięci w kontekstach zewnętrznych. Obejmuje to miejsce na dane zarządzane przy użyciu limitu, mechanizmy Service Worker i interfejsy API (np. BroadcastChannel). Więcej informacji znajdziesz w dokumentacji partycjonowania pamięci.
Czas zasobu: udostępnianie tymczasowych czasów odpowiedzi
Udostępnij PerformanceResourceTiming.firstInterimResponseStart
w przypadkach, gdy podczas pobierania zasobów nawigacyjnych lub zasobów podrzędnych wystąpi tymczasowa odpowiedź 1xx. Na przykład przy 100 kontynuacji lub 103 wskazówkach wczesnych firstInterimResponseStart
odpowiada teraz czasowi pierwszej odpowiedzi tymczasowej, a responseStart
odpowiada ostatecznej odpowiedzi, np. stan 200.
Aktualizacja obsługi prefiksów „xml” w językach lookupNamespaceURI()
i createNSResolver()
Node.lookupNamespaceURI()
domyślnie obsługuje prefiksy „xml” i „xmlns”. Ta funkcja zwraca dla nich stałe ciągi znaków przestrzeni nazw. Document.createNSResolver()
i XPathEvaluator.createNSResolver()
zatrzymują się, aby opakować określony węzeł w celu dodania obsługi prefiksu „xml”. Zwracają określony węzeł w takiej postaci, w jakiej jest. Programiści stron internetowych mogą teraz używać elementu jako elementu XPathNSResolver
bez uwzględniania go w elemencie createNSResolver()
.
VisibilityStateEntry
Przedstawia stan widoczności (widoczny lub ukryty) na osi czasu skuteczności. Oś czasu zawsze będzie zawierała wpis z wartością startTime
równą 0 i początkowym stanem widoczności, a także wpisami odpowiadającymi każdej zmianie tego stanu.
WGSLLanguageFeatures dla WebGPU
Dodaje metodę pobierania wgslLanguageFeatures
w obiekcie GPU dla WebGPU i odpowiadający mu typ WGSLLanguageFeatures
.
Polecenia WebDriver do interakcji z oknami FedCM
Ujawni to kilka poleceń WebDriver, które umożliwiają automatyzację przeglądarki (np. testowanie automatyczne) na interakcję z oknami dialogowymi FedCM.
Testowanie origin w toku
W Chrome 115 możesz włączyć te nowe testy origin.
Ciśnienie obliczeniowe
Interfejs Compute Pressure API udostępnia ogólne informacje o bieżącym stanie sprzętu urządzenia, dzięki czemu witryny mogą zachować odpowiednią równowagę między wykorzystaniem dostępnej mocy obliczeniowej i obciążeniem systemu. Compute Pressure to ogólne określenie. W tej chwili jest obliczany na podstawie obciążenia procesora, ale w przyszłości będziemy uwzględniać sygnały np. dotyczące temperatury czy stanu baterii. Więcej informacji znajdziesz w artykule o ogłoszeniu drugiego badania origin Compute Pressure.
Zarejestruj się, aby wziąć udział w testowaniu origin Compute Pressure
Wyraźne wskazówki do kompilacji z magicznymi komentarzami
Umożliwia załączanie informacji o tym, które funkcje powinny być szybko analizowane i kompilowane w plikach JavaScript. Informacje zostaną zakodowane jako magiczne komentarze. Będziemy eksperymentować z różnymi formatami komentarzy. Dotyczy to na przykład oznaczania wszystkich funkcji w pliku na potrzeby szybkiej kompilacji lub tylko ich podzbioru.
Interfejs API Long Animation Frames
Jest to rozszerzenie Long Tasks API. Mierzy zadanie wraz z kolejną aktualizacją renderowania, dodając takie informacje jak długo działające skrypty, czas renderowania i czas spędzony na wymuszonym układzie i stylu zwanym tzw. „mchaniem układu”. Deweloperzy mogą użyć tych danych do wykrywania „powolnego działania”, który jest mierzony przez interakcję z kolejnym wyrenderowaniem (INP), wykrywając przyczyny zatoru w wątku głównym, które często jest przyczyną nieprawidłowego INP.
Zarejestruj się, aby wziąć udział w testowaniu origin Original Frames
Interfejs API zasobników Cloud Storage
Zasobniki na dane umożliwiają witrynom tworzenie wielu zasobników pamięci masowej na potrzeby porządkowania danych, dzięki czemu klienty użytkownika mogą usuwać każdy zasobnik niezależnie od innych zasobników. W każdym zasobniku na dane mogą być przechowywane dane powiązane z uznawanymi interfejsami API, takimi jak IndexedDB i CacheStorage. Zarejestruj się, aby wziąć udział w testowaniu origin interfejsu API zasobników Cloud Storage
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 2 funkcje.
Wycofaj ustawiający atrybut document.domain
Metoda ustawiająca document.domain
została wycofana, ponieważ umożliwia programistom złagodzenie zasady dotyczącej tej samej domeny. W rezultacie komplikuje podstawowe granice bezpieczeństwa, które chcemy utrzymać, i uniemożliwia wprowadzanie zmian w modelu procesów Chromium po Spectre.
Alternatywne sposoby używania dokumentu document.domain znajdziesz w artykule Chrome wyłącza możliwość modyfikowania dokumentu document.domain. W większości przypadków identyfikatory postMessage()
z innych domen lub interfejs Channel Messaging API mogą zastąpić dokument document.domain. W ostateczności możesz zacząć przydzielić domenę dokumentu za pomocą klastrów agentów ze źródłem jako kluczem. Metoda ustawiająca pozostanie bez zmian, ale źródło pozostanie niezmienione.
Zrezygnuj z mutacji
Zdarzenia mutacji, w tym DOMSubtreeModified
, DOMNodeInserted
, DOMNodeRemoved
, DOMNodeRemovedFromDocument
i DOMNodeInsertedIntoDocument
, zostały wycofane ze specyfikacji w 2011 roku i zastąpione w 2012 roku interfejsem Mutation Observer API. Użycie przestarzałych zdarzeń mutacji należy przenieść do Obserwatora mutacji przed usunięciem ich w Chrome 127 (20 lipca 2024 r.).
Dowiedz się więcej o wycofywaniu zdarzeń mutacji.