Data wydania wersji stabilnej: 14 maja 2024 r.
O ile nie zaznaczono inaczej, te zmiany dotyczą stabilnej wersji Chrome 125 wersję na Androida, ChromeOS, Linuxa, macOS i Windowsa.
HTML i DOM
Deklaratywna serializacja shadow DOM
Funkcja umożliwiająca deweloperom serializację drzew DOM zawierających korzenie cienia, które zostały niedawno znormalizowane w standardzie HTML.
Śledzenie błędu nr 41490936 | Wpis na temat ChromeStatus.com | Dane techniczne
CSS
Umiejscowienie kotwicy w kodzie CSS
Pozycjonowanie zakotwiczonych CSS pozwala deweloperom tetheringować element umieszczony w absolutnie pozycji. do jednego lub kilku innych elementów na stronie (reklam zakotwiczonych) w sposób deklaratywny; bez konieczności użycia JavaScriptu. Pozycjonowanie zakotwiczonych reklam działa wydajnie, gdy można przewijać. Typowym zastosowaniem jest umieszczanie wyskakujących okienek, takich jak tekst pomocniczy, obok elementu, który je wywołał, lub menu wyboru i wyskakującej listy opcji. Przed użyciem funkcji pozycjonowania zakotwiczonych te przypadki użycia są wymagane. aby dynamicznie pozycjonować wyskakujące okienko i pozostawić je zakotwiczone jako przewinięto element wywołujący, który jest pistoletem sportowym i trudnym do w porządku. Dzięki pozycjonowaniu zakotwiczonych te przypadki użycia można wdrożyć wydajnie i deklaratywnie.
Funkcja pozycjonowania za pomocą kotwic składa się z dużej liczby właściwości CSS. Oto kilka najważniejszych właściwości:
anchor-name
: konfigurowanie elementu jako kotwicy dla innych elementów.position-anchor
: opisuje „domyślną” kotwicę, której element kotwiczony powinien używać do pozycjonowania kotwicy.- Funkcja
anchor()
: używana w odniesieniu do pozycji reklamy zakotwiczonej podczas określania pozycji zakotwiczonego elementu. inset-area
: skrót do pozycjonowania oznaczający typowe pozycje względne.
Wprowadzenie interfejsu API do pozycjonowania kotwic CSS | Śledzenie błędu #40059176 | Wpis na stronie ChromeStatus.com | Specyfikacja
Funkcje wartości skokowej CSS: round()
, mod()
i rem()
Funkcje wartości schodkowej
round()
mod()
i
rem()
, wszystkie przekształcają określoną wartość
zgodnie z inną „wartością kroku”.
Funkcja CSS round()
zwraca zaokrągloną liczbę na podstawie wybranego zaokrąglenia
strategii ustalania stawek.
Funkcja CSS mod()
zwraca moduł pozostałego dla pierwszego parametru
podzieloną przez drugi parametr, podobnie jak w operatorze reszty JavaScriptu
(%). Moduł to wartość pozostała, gdy jeden operand, dywidenda, jest
podzielone przez drugi operand, dzielnik. Zawsze przyjmuje znak dzielnika.
Funkcja CSS rem()
zwraca resztę pozostawioną po dodaniu pierwszego parametru
jest dzielony przez drugi parametr, podobnie jak w operatorze reszty JavaScriptu
(%). Reszta to wartość pozostała, gdy jeden operand, dzielna, jest
podzielone przez drugi operand, dzielnik. Zawsze bierzemy pod uwagę
dywidenda.
Śledzenie błędu nr 40253179 | Wpis na temat ChromeStatus.com | Dane techniczne
Nowa składnia niestandardowej składni CSS :state()
Niestandardowy stan CSS umożliwia elementom niestandardowym wyświetlanie własnych pseudoklas.
została określona w CSSWG, a Chrome 125 obsługuje
składnię :state(foo)
. Ta zmiana będzie mieć okno, w którym Chrome
będzie obsługiwać zarówno starą składnię (:--foo
), jak i nową, więc witryny
możesz przełączyć się na nowy.
Informacje na stronie ChromeStatus.com | Specyfikacja
Usuwanie przerw w przypadku kolorów Oklab i Oklch o jasności prawie 100% lub 0
Przed tą zmianą wszystkie kolory Lab, LCH, Oklab i Oklch o wartości jasności równej 100% były renderowane jako białe, niezależnie od pozostałych dwóch parametrów. Wszystkie kolory w tych przestrzeniach o wartości jasności 0 zostały wyświetlone jako czarne. Te 2 mapowania spowodowały nieciągłości w gradientach i nie pojawiały się w internecie dla programistów.
Po wycofaniu te kolory nie są już sztucznie mapowane, a wyświetlany kolor będzie ciągły z sąsiednimi kolorami i zależy od odwzorowanie gamy wyświetlacza.
Wpis na temat ChromeStatus.com | Dane techniczne .
Używane suwaki w głównym schemacie kolorów
Sprawia, że przeglądarka używa schematu kolorów użytkownika do renderowania widocznego obszaru
paski przewijania, jeśli wartość „schematów kolorów strony” jest „normalne” czy nie
i obliczoną wartość
color-scheme
dla elementu głównego to normal
. Suwaki w widocznym obszarze można uznać za znajdujące się poza treścią strony. Dlatego klienty użytkownika powinny uwzględniać
preferowany schemat kolorów do renderowania pasków przewijania widocznego obszaru, jeśli programista
nie określono wyraźnie obsługi schematów kolorów.
Ta zmiana nie uniemożliwia deweloperom kontrolowania schematu kolorów suwaków. Nowe zachowanie sprawia, że przeglądarka używa preferowanego przez użytkownika schematu kolorów do renderowania suwaków w obszarze widoku bez nakładki tylko wtedy, gdy deweloper nie określił schematu kolorów dla elementu ukorzenia.
title [tytuł] | Śledzenie błędu nr 40259909 | Wpis na temat ChromeStatus.com | Dane techniczne
Zajęcia view-transitions
Dostępna jest nowa właściwość CSS view-transition-class
, która umożliwia
określ co najmniej 1 klasę przejść między widokami. Następnie możesz wybrać
ViewTransition
pseudoelementów korzystających z tych klas, np.
::view-transition-group(*.class)
To jest rozszerzenie interfejsu ViewTransfer API. upraszcza styl pseudoelementów przejścia widoku, w podobny sposób. że klasy CSS ułatwiają określanie stylu zwykłych elementów DOM.
Informacje o błędzie #41492972 | Informacje na stronie ChromeStatus.com | Specyfikacja
Wczytuję
Akceptowanie adresów URL HTTP i HTTPS podczas tworzenia WebSocket
Ta aktualizacja włącza schematy HTTP i HTTPS w konstruktorze WebSocket,
w ten sposób pozwalają też programistom używać względnych adresów URL. Są one znormalizowane do
schematów wewnętrznych ws:
i wss:
.
Śledzenie błędu nr 325979102 | Wpis na temat ChromeStatus.com | Dane techniczne
Interfejsy Web API
Dodatki do Attribution Reporting API
Do interfejsu Attribution Reporting API dodaliśmy funkcje, które umożliwiają dodatkowe możliwości debugowania dzięki obsłudze raportów debugowania błędów parsowania, poprawiają ergonomię interfejsu API dzięki obsłudze pola umożliwiającego określenie preferowanej platformy rejestracji oraz zwiększają ochronę prywatności.
Wpis na temat ChromeStatus.com
Interfejs Compute Pressure API
Interfejs Compute Pressure API stany wysokiego poziomu reprezentujące obciążenie procesora w systemie. Umożliwia to implementacji korzystanie z odpowiednich danych o sprzęcie, aby użytkownicy mogli korzystać z całej dostępnej mocy obliczeniowej, dopóki system nie będzie narażony na niekontrolowany stres.
Firma Intel kierowała pracami nad projektem i wdrożeniem tego interfejsu API, który pozwoli aplikacjom do rozmów wideo na dynamiczne dostosowanie funkcji i wydajności.
Interfejs Compute Pressure API | Śledzenie błędu nr 40683064 | Wpis na temat ChromeStatus.com | Dane techniczne
Rozszerzenie interfejsu Storage Access API (SAA) o przechowywanie danych poza plikami cookie
Spowoduje to uruchomienie proponowanego rozszerzenia interfejsu Storage Access API (wstecz zgodny i był w fazie testowania origin), aby umożliwić dostęp do niepartycjonowanych plików cookie i przechowywanie danych poza plikami cookie w kontekście rozwiązań zewnętrznych. Obecny interfejs API zapewnia tylko które mają inne zastosowania niż pliki cookie.
Śledzenie błędu #40282415 | Informacja na stronie ChromeStatus.com | Specyfikacja
Wymagania dotyczące CORS w przypadku punktu końcowego stwierdzenia tożsamości w ramach FedCM
Pobieranie danych w interfejsie FedCM API jest trudne do rozumowania ze względu na właściwości. których brakuje. Trwają dyskusje na temat kont. panuje też konsensus, że punkt końcowy potwierdzenia identyfikatora powinien użyj CORS. Ta aktualizacja dopasowuje właściwości zabezpieczeń tego pobierania do innych pobierania na platformie internetowej.
Aktualizacje FedCM: testowanie origin interfejsu Button Mode API, CORS i SameSite | Śledzenie błędu nr 40284123 | Wpis na temat ChromeStatus.com
żądanie z użyciem danych logowania FedCM nie wysyła już pliku cookie SameSite=Strict
FedCM wysyła teraz żądania potwierdzenia tożsamości z użyciem CORS. Ta zmiana oznacza, że Chrome nie będzie już wysyłać plików cookie SameSite=Strict
do punktu końcowego oświadczenia o tożsamości, ale nadal będzie wysyłać pliki cookie SameSite=None
. Nie ma sensu wysyłanie różnych zestawów plików cookie do punktu końcowego kont i punktu końcowego oświadczenia o tożsamości, więc ta zmiana zapewnia spójność.
Niewysyłanie plików cookie SameSite=Strict
jest też zgodne z
Działanie usługi requestStorageAccess
i żądaniach z różnych witryn.
Śledzenie błędu nr 329145816 | Wpis na temat ChromeStatus.com | Dane techniczne
Domyślne działanie polegające na przesuwaniu myszą
Chrome zezwala na anulowanie zdarzeń mousemove, aby zapobiegać działaniu innych interfejsów API, takich jak zaznaczenie tekstu (a w przeszłości nawet przeciąganie i upuszczanie). Nie jest to zgodne z innymi głównymi przeglądarkami ani ze specyfikacją zdarzeń interfejsu użytkownika. Teraz domyślnym działaniem po kliknięciu myszy nie będzie już zaznaczanie tekstu. Zaznaczanie tekstu oraz przeciąganie i upuszczanie można
nadal zostanie zablokowana przez anulowanie wydarzeń selectstart
i dragstart
.
Ta funkcja będzie wdrażana stopniowo, począwszy od Chrome 125 i oczekuje będzie dostępna dla wszystkich użytkowników w Chrome 126.
Demonstracja | Śledzenie błędu nr 40078978 | Wpis na temat ChromeStatus.com | Dane techniczne
Modyfikatory wyrażeń regularnych
Modyfikatory wyrażeń regularnych umożliwiają modyfikowanie lokalnie tych parametrów: i
, m
,
i s
' flagi wewnątrz wzorów.
Aby włączyć flagę wyrażenia podrzędnego, użyj (?X:subexpr)
, gdzie X
jest jednym z
i
, m
lub s
. Aby wyłączyć oznaczenie podwyrazu, użyj (-X:subexpr)
.
Na przykład w przypadku flagi i
bez rozróżniania wielkości liter:
const re1 = /^[a-z](?-i:[a-z])$/i;
re1.test("ab"); // true
re1.test("Ab"); // true
re1.test("aB"); // false
const re2 = /^(?i:[a-z])[a-z]$/;
re2.test("ab"); // true
re2.test("Ab"); // true
re2.test("aB"); // false
Wyrażenie regularne z duplikatowymi nazwanymi grupami przechwytywania
Zduplikowanie nazwanych grup przechwytywania pozwala użyć tej samej nazwy grupy przechwytywania między alternatywnymi rozwiązaniami. Przykład
const re = /(?<year>[0-9]{4})-[0-9]{2}|[0-9]{2}-(?<year>[0-9]{4})/;
W tym przypadku year
jest prawidłowe dla pierwszej alternatywy ((?<year>[0-9]{4})-[0-9]{2}
) lub drugiej alternatywy ([0-9]{2}-(?<year>[0-9]{4})
).
Aplikacje Chrome
Interfejs Direct Sockets API w aplikacjach Chrome
Ta aktualizacja ułatwia przejście ze specjalistycznych aplikacji na aplikacje izolowane, ponieważ umożliwia w aplikacji Chrome włączenie bezpośrednich gniazd (Direct Sockets) i uzyskiwanie przez aplikacje internetowe dostępu do urządzeń sieciowych i systemów za pomocą protokołów TCP i UDP.
Wpis na temat ChromeStatus.com | Dane techniczne .
Nowe wersje próbne origin
Interfejsy Button Mode API i Use Other Account API w FedCM
Ta wersja testowa origin obejmuje 2 poniższe interfejsy API FedCM.
Interfejs Button Mode API umożliwia witrynom wywoływanie FedCM jednym kliknięciem przycisku, na przykład: klikając przycisk Sign-in to IdP (Zaloguj się w dostawcy tożsamości). Wymaga to, aby FedCM zawsze odpowiadał widocznym interfejsem użytkownika, w przeciwieństwie do trybu widżetu, który nie wyświetla interfejsu po wylogowaniu użytkowników. Wywołuję interfejs FedCM API w button mode (tryb przycisku) umożliwia użytkownikom zalogowanie się u dostawcy tożsamości (w oknie dialogowym), gdy użytkownicy są wylogowani.
Poza tym tryb przycisku jest wywoływany w treściach dla określonych użytkowników. gest, interfejs może być też lepiej widoczny (np. wyśrodkowany lub modalny) w porównaniu z interfejsem w trybie widżetu (w którym nie ma intencji). Dowiedz się więcej o tym, jak działa interfejs Button Mode API w artykule Nowe funkcje w FedCM: testowanie pochodzenia interfejsu Button Mode API, CORS i SameSite.
Interfejs Use Other Account API umożliwia dostawcy tożsamości zezwolenie użytkownikom na logowanie się na inne konta.
Origin Trial | Demo | Śledzenie błędu #40284792 | Informacje na stronie ChromeStatus.com | Specyfikacja
Złożone interfejsy API
Testowanie origin interfejsu Device Posture API i interfejsu Enumeration API dotyczącego segmentów widoku Te interfejsy API zostały stworzone, aby pomóc deweloperom w kierowaniu aplikacji na urządzenia składane.
Testowanie wersji Origin | Testowanie wersji Origin dla interfejsów API urządzeń składanych | Wpis na stronie ChromeStatus.com | Specyfikacja
Próba wycofania w przypadku właściwości i metod pełnego ekranu HTMLVideoElement z prefiksem
Ten okres próbny wycofywania umożliwia przywrócenie obsługi właściwości i metod z prefixem HTMLVideoElement, jeśli potrzebujesz więcej czasu na dostosowanie kodu.
Wersja próbna origin | Wpis na temat ChromeStatus.com .
Pomiń skanowanie wstępne
Omija skaner wstępnego załadowania, aby sprawdzić kompromisy dotyczące wydajności w przypadku stron bez pobierania podzasobów.
Krok skanera wstępnego wczytywania poprawia wydajność stron z zasobem podrzędnym przez implementowanie spekulacyjnego pobierania z wyprzedzeniem. Jednak w przypadku stron, które nie korzystają z tego kroku, czyli stron bez podzasobów, jest to dodatkowy nakład przetwarzania przy niewielkiej korzyści.
Zaawansowani użytkownicy internetu, którzy chcieliby skorzystać na obniżeniu tego narzutu, mogą funkcja eksperymentalna udostępnia opcję na poziomie strony, która umożliwia wyłączenie skanera wstępnego wczytywania. Dane zebrane w ramach tego eksperymentu mogą ocenić, czy zmodyfikowany interfejs API lub inny skorzystaj ze skanera wstępnego wczytywania HTML.
Wersja próbna origin | Śledzenie błędu nr 330802493 | Wpis na temat ChromeStatus.com | Dane techniczne
Wycofanie i usunięcie
Usuń parametr „window-placement” alias uprawnień i zasad uprawnień „window-management”
Usuwa parametr „window-placement”. alias zasad dotyczących uprawnień i uprawnień „window-management”. Jest to część działań, które mają na celu zmianę nazw ciągów w końcu wycofaliśmy i usunęliśmy element „window-placement”. Zmiana terminologii zwiększa trwałość deskryptora, ponieważ Interfejs API zarządzania stale się rozwija.
title [tytuł] | Śledzenie błędu nr 40842072 | Wpis na temat ChromeStatus.com | Dane techniczne
Usuwanie zasady Enterprise: NewBaseUrlInheritanceBehaviorAllowed
Zmiana kodu (włączanie nowego zachowania dziedziczenia adresu URL podstawowego), którą zastępuje ta zasada dla firm, została włączona w wersjach stabilnych od sierpnia 2023 r. (Chrome 118). Ponieważ znane problemy zostały rozwiązane, ta zasada dla firm została usunięta w Chrome 125.
Informacja na stronie ChromeStatus.com
Usuwanie właściwości i metod pełnego ekranu HTMLVideoElement z prefiksem
Pełnoekranowe interfejsy API z prefiksem HTMLVideoElement
zostały wycofane w wersji Chrome 38. Zostały one zastąpione przez Element.requestFullscreen()
, które po raz pierwszy pojawiły się w 2018 roku w Chrome 71 bez prefiksu.
Następujące właściwości i metody zostaną usunięte z elementu HTMLVideoElement:
webkitSupportsFullscreen
webkitDisplayingFullscreen
webkitEnterFullscreen()
webkitExitFullscreen()
webkitEnterFullScreen()
(zwróć uwagę na inną wielkość liter w FullScreen)webkitExitFullScreen()
Jeśli Twoja witryna nadal korzysta z tych funkcji i potrzebujesz więcej czasu na zaktualizowanie kodu, zarejestruj się w okresie próbnym przed wycofaniem wymienionym w tym poście.
Wpis na temat ChromeStatus.com
Więcej informacji
Chcesz więcej? Zapoznaj się z tymi dodatkowymi materiałami.
- Nowości w Chrome 125
- Co nowego w wersji 125 Narzędzi deweloperskich w Chrome
- Aktualizacje ChromeStatus.com w przypadku Chrome 125
- Kalendarz wersji Chrome
- Wycofanie się z użycia
- Nadchodzące usunięcia