Chrome 112 bèta

CSS-nesten, animatiecompositie en een indienerparameter voor de FormData-constructor.

Tenzij anders aangegeven, zijn de hieronder beschreven wijzigingen van toepassing op de nieuwste release van het Chrome-bètakanaal voor Android, ChromeOS, Linux, macOS en Windows. Lees meer over de hier genoemde functies via de aangeboden links of via de lijst op ChromeStatus.com. Chrome 112 is vanaf 9 maart 2023 een bètaversie. Je kunt het nieuwste downloaden op Google.com voor desktop of in de Google Play Store op Android.

CSS

CSS-nesten

De mogelijkheid om CSS-stijlregels binnen andere stijlregels te nestelen, waarbij selectors van de buitenste met de binnenste regel worden gecombineerd om de modulariteit en onderhoudbaarheid van stijlbladen te vergroten. Lees meer in dit artikel over CSS-nesten .

CSS- animation-composition eigenschap

Met de eigenschap animation-composition kan de specificatie van de samengestelde bewerking worden gebruikt wanneer meerdere animaties tegelijkertijd dezelfde eigenschap beïnvloeden. Bekijk een voorbeeld in deze demo .

Web-API's

De infobalk "Deze pagina opnieuw laden" wordt niet langer weergegeven als het frame op het hoogste niveau toestemmingswijzigingen waarneemt

Onderdrukt de informatiebalk "Deze pagina opnieuw laden" als het frame op het hoogste niveau is geabonneerd op de onchange gebeurtenis van PermissionStatus , wat wordt opgevat als een indicatie dat de toepassing dynamisch wil reageren op wijzigingen in de camera- of microfoontoestemming die zijn geïnitieerd via het pagina-infodialoogvenster. Ongeacht de aanwezigheid van de gebeurtenislistener blijft het reeds bestaande gedrag ongewijzigd: mediastreams worden onmiddellijk beëindigd zodra de toestemming wordt ingetrokken.

Voeg een optionele indienerparameter toe aan de FormData constructor

Maakt het doorgeven van een verzendknop aan de FormData constructor mogelijk. Als de knop een naam heeft of een afbeeldingsknop is, draagt ​​deze bij aan de formuliergegevensset. Dit maakt het mogelijk om een FormData object te maken met dezelfde dataset als een gewone formulierinzending die door de knop wordt geactiveerd.

RegExp v-vlag met ingestelde notatie en eigenschappen van tekenreeksen

Voeg setbewerkingen, letterlijke tekenreeksen, geneste klassen en Unicode-eigenschappen van tekenreeksen toe aan tekenklassen voor reguliere expressies. Door setbewerkingen en Unicode-eigenschappen van strings kunnen ontwikkelaars eenvoudig reguliere expressies maken die strings matchen met bepaalde Unicode-tekens.

Bijvoorbeeld: /[\p{Script_Extensions=Greek}&&\p{Letter}]/v komt overeen met alle Griekse letters.

Bijgewerkt <dialog> algoritme voor initiële focus

Er zijn enkele wijzigingen aangebracht in welk element wordt geselecteerd om focus te krijgen wanneer een <dialog> -element wordt geopend:

  • Zorg ervoor dat de dialoogfocusstappen naar focusbare toetsenbordelementen kijken in plaats van naar enig focusbaar element.
  • Zorg ervoor dat het dialoogelement zelf focus krijgt als het autofocus-attribuut is ingesteld.
  • Zorg ervoor dat het dialoogelement zelf de focus krijgt als terugval in plaats van dat de focus wordt "gereset" naar het hoofdgedeelte.

WebAssembly-staartoproep

Voeg een expliciete tail call en indirecte tail call opcodes toe aan WebAssembly.

WebGLContextEvent op webwerkers

Het WebGLContextEvent type is al een aantal jaren gedefinieerd in de WebGL-specificatie van Khronos, maar pas onlangs werd opgemerkt dat dit type in Blink niet zichtbaar is op webwerkers.

De meeste toepassingen voegen eenvoudigweg een gebeurtenislistener toe voor het type en zoeken niet naar het prototype ervan in de globale reikwijdte. Dit is een eenvoudige oplossing voor Blink's Web IDL voor WebGLContextEvent , maar is een wijziging die aan het web wordt blootgesteld.

Servicemedewerker no-op fetch-handler overslaan

Deze functie maakt de navigatie van pagina's met ophaalhandlers zonder operationele servicemedewerkers snel door ze over te slaan.

Sommige sites hebben een no-op (geen bewerking) ophaallistener (bijvoorbeeld onfetch = () => {} ). Omdat het hebben van de fetch-listener een van de vereisten was om een ​​progressieve web-app (PWA) te zijn, gaan we ervan uit dat ze dat hebben gedaan om hun site als PWA te laten herkennen. Het brengt echter alleen maar overhead met zich mee om een ​​servicemedewerker te starten en een no-op-listener uit te voeren, zonder enige functievoordelen zoals caching of offline mogelijkheden, omdat de code niets doet.

Om de navigatie naar dergelijke pagina's sneller te maken, laten we vanaf Chrome 112 de start van de servicemedewerker en de verzending van de luisteraar uit het kritieke navigatiepad weg als een user-agent vaststelt dat alle ophaallisteners van de servicemedewerker no-ops zijn.

Als onderdeel van deze wijziging zal Chromium consolewaarschuwingen tonen als alle fetch-listeners van de servicemedewerker no-ops zijn, en ontwikkelaars aanmoedigen om de nutteloze fetch-listeners te verwijderen. Hopelijk stoppen sites met het gebruik van de nutteloze ophaallisteners en kunnen we de functie in de toekomst beëindigen.

Accept-codering: br (Brotli) op ​​HTTPS-verbinding in WebView

Brotli (inhoudscoderingstype: br ) is een verliesvrij compressie-algoritme voor generieke doeleinden dat een dichtere compressie biedt met een compressieverhouding en snelheid die vergelijkbaar zijn met de beste momenteel beschikbare compressiemethoden voor algemene doeleinden (zie google/brotli en RFC 7932 voor meer informatie details).

Hoewel het HTTP-inhoudscoderingstype voor Brotli ( Accept-Encoding: br ) door Chrome wordt ondersteund vanaf versie 50, was het tot nu toe niet ingeschakeld voor WebView. De functie zal gefaseerd worden uitgerold om de stabiliteit te garanderen en zal beschikbaar zijn voor 50% van de bevolking op WebView Beta.

Oorsprongsproeven zijn aan de gang

In Chrome 112 kunt u zich aanmelden voor de volgende origin-proefversies .

FedCM: API voor automatische herauthenticatie

De nieuwste versie van FedCM bevat een opt-in automatische herauthenticatiefunctie, waarmee gebruikers automatisch opnieuw kunnen worden geverifieerd wanneer ze terugkomen na hun eerste authenticatie met FedCM.

Momenteel moet een gebruiker, nadat hij via de FedCM een federatief account heeft aangemaakt op een RP (relying party) met een IdP (identity provider), de volgende keer dat hij de website bezoekt, dezelfde stappen in de gebruikersinterface doorlopen. Dat wil zeggen dat ze expliciet moeten bevestigen en opnieuw moeten verifiëren om door te gaan met de aanmeldingsstroom. Omdat een van de hoofddoelen van FedCM het voorkomen van geheime tracking is, is deze gebruikerservaring (UX) zinvol voordat de gebruiker het federatieve account heeft aangemaakt, maar wordt deze onnodig en omslachtig nadat de gebruiker er eenmaal doorheen is gegaan. Daarom introduceert Chrome een meer gestroomlijnde UX waaruit RP's kunnen kiezen voor hun terugkerende gebruikers.

Registreer u voor de FedCM-proefversie voor automatische herauthenticatie van de oorsprong

Beëindiging proefperiode

De getStats() -methode van RTCPeerConnection retourneert niet langer statistische objecten waarbij type == "track" of "stream" . Deze functie is verwijderd in Chrome 112. Meld u aan voor deze proefperiode zodat u meer tijd heeft om de benodigde wijzigingen aan te brengen.

Registreer u voor deze beëindigingsproef

X-Requested-With in WebView-beëindiging

De Deprecation Origin-proef ondersteunt cross-origin pre-inschakeling bij het aanroepen van services die afhankelijk zijn van de X-Requested-With header. Deze optie is beschikbaar in WebView vanaf Chrome 112. Zie de installatie-instructies van de origin-proefversie voor hoe u deze functie kunt gebruiken.

Registreer u voor de beëindigingsproefversie van X-Requested met WebView .

Beëindigingen en verwijderingen

Deze versie van Chrome introduceert de hieronder vermelde beëindigingen en verwijderingen. Ga naar ChromeStatus.com voor een lijst met geplande beëindigingen, huidige beëindigingen en eerdere verwijderingen.

In deze versie van Chrome wordt één functie beëindigd.

Beëindig de document.domain -setter

Met de document.domain setter kunnen ontwikkelaars het same-origin-beleid versoepelen, waardoor de fundamentele beveiligingsgrens die we willen handhaven ingewikkelder wordt en wegversperringen worden opgeworpen in de weg van post-Spectre-wijzigingen in het procesmodel van Chromium. Het is nu mogelijk om via Origin-keyed agentclusters te kiezen.

In deze versie van Chrome wordt één functie verwijderd.

Verwijder statistiekenobjecten track en stream via de getStats() -methode van RTCPeerConnection

De getStats() -methode van RTCPeerConnection retourneert niet langer statistische objecten waarbij type == "track" of "stream" . Wordt niet geleverd in Chrome 112, met een beëindigingsproefperiode (hierboven vermeld) om de beschikbaarheid van deze statistieken uit te breiden naar Chrome 115.