Chrome 130 bèta

Gepubliceerd: 18 september 2024

Tenzij anders vermeld, zijn de volgende wijzigingen van toepassing op de nieuwste versie van het Chrome-bètakanaal voor Android, ChromeOS, Linux, macOS en Windows. Lees meer over de hier vermelde functies via de links of via de lijst op ChromeStatus.com. Chrome 130 is bètaversie vanaf 18 september 2024. Je kunt de nieuwste versie downloaden op Google.com voor desktop of in de Google Play Store voor Android.

CSS

Deze release voegt vier nieuwe CSS-functies toe.

CSS Container Queries flat tree lookup

De specificatie voor containerquery's is gewijzigd om flat tree-voorouders op te zoeken. Deze wijziging is alleen relevant voor shadow DOM, waar een element nu niet-benoemde containers kan zien binnen shadow trees waarin het element of een van zijn voorouders is geplaatst, zelfs als de CSS-regel geen ::part() of ::slotted() gebruikt.

CSS-nesting: de regel voor geneste declaraties

Houdt kale declaraties die een geneste regel volgen op hun plaats door deze declaraties tijdens het parseren in CSSNestedDeclarations -regels te verpakken.

Volledige en niet-geprefixeerde box-decoratie-break-ondersteuning

Voegt ondersteuning toe voor box-decoration-break: clone zowel voor inline-fragmentatie (regelopmaak) als blokfragmentatie (paginering voor afdrukken en multicol).

Voorheen werd in Chrome alleen box-decoration-break:slice (de beginwaarde) ondersteund voor blokfragmentatie, terwijl voor inlinefragmentatie ook box-decoration-break:clone werd ondersteund, maar alleen bij gebruik van de eigenschap -webkit-box-decoration-break met het voorvoegsel.

Sta meer pseudo-elementen en pseudo-klassen toe na ::part()

CSS-selectors die het pseudo-element ::part() gebruiken, mogen andere CSS-pseudo-elementen (behalve ::part() ) en vele andere CSS-pseudo-klassen erna hebben. Combinators zijn nog steeds niet toegestaan ​​na ::part() , en pseudo-klassen die afhankelijk zijn van een boomstructuur zijn niet toegestaan.

Voorheen stond Chrome slechts een beperkte set pseudoklassen en pseudo-elementen toe na ::part() . Deze wijziging staat alle pseudoklassen en pseudo-elementen toe die zouden moeten worden toegestaan. Dit betekent dat selectoren zoals ::part(part-name):enabled en ::part(part-name)::marker nu ook zijn toegestaan.

Web-API's

Functie voor Attributierapportage API (Attributiebereiken)

Deze wijziging is gebaseerd op feedback uit de advertentietechnologie en de behoefte aan meer gedetailleerde filteropties voordat het attributieproces plaatsvindt. API-aanvragers kunnen hiermee een veld met de naam 'attributiebereiken' specificeren dat wordt gebruikt voor filtering voordat de reguliere attributiestroom start. Dit geeft API-aanvragers meer gedetailleerde controle over de attributiegranulariteit en de mogelijkheid om correcte attributierapporten te ontvangen wanneer er meerdere verschillende adverteerders of campagnes zijn die allemaal op dezelfde bestemmingssite converteren.

Functie voor attributierapportage-API (verbetering van de privacy van debugsleutel)

Deze wijziging helpt om een ​​mogelijk privacyprobleem met foutopsporingssleutels te dichten.

Momenteel staat de API toe dat een bron-debugsleutel of een trigger-debugsleutel wordt opgegeven als er cookies van derden beschikbaar zijn en door API-aanvragers kunnen worden ingesteld. Als er een bron- of trigger-debugsleutel wordt opgegeven, wordt deze opgenomen in het attributierapport. Dit kan leiden tot een privacylek als cookies van derden alleen zijn toegestaan ​​op de site van de uitgever of de adverteerder, maar niet op beide.

Deze wijziging verhelpt dit probleem door af te dwingen dat bron-debugsleutels en trigger-debugsleutels alleen in het attributierapport worden opgenomen als ze aanwezig zijn op zowel de bron als de trigger. Dit zou betekenen dat cookies van derden beschikbaar waren op zowel de website van de uitgever als de website van de adverteerder. Deze wijziging is van toepassing op zowel rapporten op gebeurtenisniveau als op aggregeerbare rapporten.

Compressiewoordenboektransport met gedeelde Brotli en gedeelde Zstandard

Met deze functie wordt ondersteuning toegevoegd voor het gebruik van aangewezen eerdere reacties als een extern woordenboek voor het coderen van inhoud en het comprimeren van reacties met Brotli of Zstandard.

Bedrijven kunnen compatibiliteitsproblemen ondervinden met de netwerkinfrastructuur van het bedrijf die HTTPS-verkeer onderschept en gevoelig is voor onbekende inhoudscoderingen. Het bedrijfsbeleid CompressionDictionaryTransportEnabled is beschikbaar om de transportfunctie voor compressiewoordenboeken uit te schakelen.

Gelijktijdige vloeiende scrollIntoView()

Met de scrollIntoView() methode met behavior: "smooth" kunnen ontwikkelaars scrollcontainers maken die met een zachte scrollanimatie naar hun afstammelingen scrollen. Deze functie corrigeert de API-implementatie van Chrome, zodat lopende scrollIntoView animaties niet worden geannuleerd door niet-gerelateerde scrolls in andere scrollcontainers.

Met deze functie worden ook gevallen opgelost waarbij Chrome niet naar het fragmentanker van een pagina kan scrollen vanwege een concurrerende scrollIntoView die wordt aangeroepen wanneer de pagina wordt geladen.

Document picture-in-picture: optie toevoegen om cache voor venstergrenzen te negeren

Hiermee wordt een nieuwe parameter ( preferInitialWindowPlacement ) toegevoegd aan de picture-in-picture API voor documenten. Wanneer deze parameter op true is ingesteld, geeft deze de gebruikersagent een melding dat deze niet moet proberen de positie of grootte van de vorige picture-in-picture van deze site opnieuw te gebruiken bij het openen van dit document.

Vaak wordt een document met een picture-in-picture-venster meerdere keren gesloten en opnieuw geopend voor dezelfde site, zoals bij het verplaatsen van een videoconferentie van en naar PiP. De user agent kan het PiP-venster opnieuw openen op de meest recente grootte en locatie, zodat het blijft staan ​​waar de gebruiker het de vorige keer heeft verplaatst en er continuïteit is tussen de PiP-vensters. Als het nieuwe venster echter semantisch geen verband houdt met het vorige venster, bijvoorbeeld bij een nieuw videogesprek, kan de ontwikkelaar deze parameter gebruiken om de user agent een hint te geven dat dit venster beter geopend kan worden op de standaardpositie en -grootte.

Leer hoe u het venster in de standaardpositie en -grootte kunt openen .

Verbeterde foutrapportage in IndexedDB voor grote waarde-leesfouten

Wijziging in rapportage voor bepaalde foutgevallen die eerder werden gerapporteerd met een DOMException en het bericht "Kan grote IndexedDB-waarde niet lezen".

Chrome genereert nu een DOMException met de naam "NotFoundError" wanneer het bestand met de gegevens die door een IDBRequest worden gelezen, ontbreekt op de schijf. Zo kunnen sites de juiste corrigerende maatregelen nemen wanneer er een onherstelbare fout optreedt. Corrigerende maatregelen kunnen bestaan ​​uit het verwijderen van de vermelding uit de database, het informeren van de gebruiker of het opnieuw ophalen van de gegevens van servers.

Scrollcontainers met focus op het toetsenbord

Met deze functie worden scrollers zonder focusbare onderliggende elementen standaard wel toetsenbord-focusbaar.

Dit is een belangrijke verbetering om scrollers en de inhoud binnen scrollers toegankelijker te maken voor alle gebruikers. U kunt meer lezen over de voordelen ervan in Scrollers met focus op het toetsenbord . Scrollers met focus op het toetsenbord zijn vanaf Chrome 130 standaard ingeschakeld. Als websites tijd nodig hebben om aan deze nieuwe functie te wennen, zijn er een paar opties:

Biedingen en veilingdiensten voor beschermd publiek

De Protected Audience API (voorheen bekend als FLEDGE) is een Privacy Sandbox-voorstel voor remarketing en aangepaste doelgroeptoepassingen. Het is zo ontworpen dat derden het surfgedrag van gebruikers op verschillende sites niet kunnen volgen.

Deze functie, Protected Audience Bidding and Auction Services, beschrijft een manier om Protected Audience-berekeningen te laten plaatsvinden op cloudservers in een vertrouwde uitvoeringsomgeving, in plaats van lokaal op het apparaat van een gebruiker. Het verplaatsen van berekeningen naar cloudservers kan helpen de Protected Audience-veiling te optimaliseren, waardoor rekencycli en netwerkbandbreedte voor een apparaat vrijkomen.

Ondersteuning voor URL's die geen speciaal schema zijn

Voorheen ondersteunde de URL-parser van Chrome geen niet-speciale URL's. De parser parseert niet-speciale URL's alsof ze een "ondoorzichtig pad" hebben, wat niet overeenkomt met de URL-standaard. Nu parseert de URL-parser van Chromium niet-speciale URL's correct, volgens de URL-standaard.

Zie bit.ly/url-non-special voor meer informatie.

WebAssembly JavaScript String Builtins

Deze functie maakt veelgebruikte JavaScript-stringbewerkingen beschikbaar voor import in WebAssembly. Hiermee kunt u JavaScript-strings vanuit WebAssembly maken en bewerken zonder ondersteuning binnen WebAssembly. Dit zorgt nog steeds voor vergelijkbare prestaties als ondersteunde stringreferenties.

WebGPU: blending van dubbele bronnen

Voegt de optionele GPU-functie "dual-source-blending" toe, waarmee twee fragmentshader-uitvoer in één framebuffer kan worden gecombineerd. Deze techniek is met name handig voor toepassingen die complexe blendingbewerkingen vereisen, zoals toepassingen die gebaseerd zijn op Porter-Duff-blendmodi. Door de noodzaak voor frequente wijzigingen in de pijplijnstatus van objecten te verminderen, kan dual-source blending de prestaties en flexibiliteit verbeteren.

Web Serial: connected kenmerk en RFCOMM-verbindingsgebeurtenissen

Deze functie voegt een booleaans kenmerk SerialPort.connected toe. Dit kenmerk retourneert true als de seriële poort logisch verbonden is. Bij bekabelde seriële poorten is een poort logisch verbonden als de poort fysiek op het systeem is aangesloten. Bij draadloze seriële poorten is een poort logisch verbonden als het apparaat dat de poort host, open verbindingen met de host heeft.

Voorheen verstuurden alleen bekabelde seriële poorten verbindings- en verbindingsgebeurtenissen. Met deze functie versturen Bluetooth RFCOMM seriële poorten deze gebeurtenissen wanneer de poort logisch verbonden of verbroken wordt.

Met deze functie kunnen toepassingen detecteren of een Bluetooth RFCOMM-seriële poort beschikbaar is zonder de poort te openen.

Meer informatie vindt u in Bluetooth RFCOMM-updates in Web Serial .

Oorsprongsproeven gaande

In Chrome 130 kunt u kiezen voor de volgende nieuwe oorsprongsproeven .

Taaldetector API

Een JavaScript API voor het detecteren van de taal van tekst , met betrouwbaarheidsniveaus.

WebAuthn-attestatieformaten

Ondersteunt het attestationFormats veld van WebAuthn niveau 3.

WebAuthn Level 3 ondersteunt een site die een geordende voorkeur voor formaten voor verificatie van inloggegevens uitdrukt in het nieuwe veld attestationFormats . Deze functie maakt ondersteuning hiervoor mogelijk op Android, waar meerdere formaten door sleutelproviders kunnen worden ondersteund.

Registreer u voor de WebAuthn attestationFormats-proefversie.

Afschaffingen en verwijderingen

Deze versie van Chrome introduceert de volgende verouderingen en verwijderingen. Ga naar ChromeStatus.com voor lijsten met geplande verouderingen, huidige verouderingen en eerdere verwijderingen.

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

expectedImprovement in DelegatedInkTrailPresenter verwijderen

Het kenmerk expectedImprovement vertelt webontwikkelaars hoeveel verbetering de DelegatedInkTrails API zal brengen in hun huidige inktlatentie. Dit kenmerk is echter niet de moeite waard vanwege de toename in vingerafdrukentropie.

In deze versie van Chrome is één functie verouderd.

Verouder de niet-standaard GPUAdapter requestAdapterInfo() methode

De asynchrone methode requestAdapterInfo() in WebGPU is overbodig omdat ontwikkelaars GPUAdapterInfo al synchroon kunnen ophalen met behulp van het GPUAdapter info -kenmerk.