Gepubliceerd: 18 september 2024
Tenzij anders vermeld, zijn de volgende wijzigingen van toepassing op de nieuwste Chrome-bètaversie voor Android, ChromeOS, Linux, macOS en Windows. Meer informatie over de hier vermelde functies vindt u via de meegeleverde links of in de lijst op ChromeStatus.com. Chrome 130 is een bètaversie sinds 18 september 2024. U 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 te zoeken naar voorouders in een platte boomstructuur. 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
Zorgt ervoor dat kale declaraties die een geneste regel volgen, op hun plaats blijven door deze declaraties tijdens het parsen in CSSNestedDeclarations -regels te plaatsen.
Volledige en niet-voorafgaande ondersteuning voor het onderbreken van kaderdecoratie
Voegt ondersteuning toe voor box-decoration-break: clone zowel voor inline fragmentatie (regelindeling) als voor blokfragmentatie (paginering voor afdrukken en meerdere kolommen).
Voorheen werd in Chrome alleen box-decoration-break:slice (de oorspronkelijke waarde) ondersteund voor blokfragmentatie, terwijl voor inline fragmentatie ook box-decoration-break:clone werd ondersteund, maar alleen bij gebruik van de vooraf ingestelde eigenschap -webkit-box-decoration-break .
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 veel andere soorten CSS-pseudoklassen erachter hebben. Combinatoren zijn nog steeds niet toegestaan na ::part() , en pseudoklassen die afhankelijk zijn van een boomstructuur zijn niet toegestaan.
Voorheen stond Chrome slechts een beperkt aantal pseudo-klassen en pseudo-elementen toe na ::part() . Deze wijziging maakt het mogelijk om alle pseudo-klassen en pseudo-elementen toe te staan die zouden moeten zijn. Dit betekent dat selectors zoals ::part(part-name):enabled en ::part(part-name)::marker nu zijn toegestaan.
Web-API's
Functie van de Attributierapportage-API (Attributiebereiken)
Deze wijziging is gebaseerd op feedback van advertentietechnici en de behoefte aan meer gedetailleerde filteropties vóór het attributieproces plaatsvindt. API-gebruikers kunnen nu een veld genaamd "attributiebereik" specificeren, dat wordt gebruikt voor filtering voordat de reguliere attributiestroom start. Dit geeft API-gebruikers meer controle over de granulariteit van de attributie en de mogelijkheid om correcte attributierapporten te ontvangen wanneer er meerdere verschillende adverteerders of campagnes zijn die allemaal converteren op dezelfde bestemmingswebsite.
Attributierapportage-API-functie (verbetering van de privacy van debugsleutel)
Deze wijziging helpt een potentieel privacylek met betrekking tot debug-sleutels te dichten.
Momenteel staat de API toe dat een bron- of trigger-debugsleutel wordt opgegeven als er cookies van derden beschikbaar zijn en door API-aanroepers kunnen worden ingesteld. Als 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 website van de uitgever of de adverteerder, maar niet op beide.
Deze wijziging verhelpt dit probleem door ervoor te zorgen dat debug-sleutels voor de bron en de trigger alleen in het attributierapport worden opgenomen als ze zowel op de bron als op de trigger aanwezig zijn. Dit betekent dat er cookies van derden beschikbaar zijn op zowel de website van de uitgever als die van de adverteerder. Deze wijziging is van toepassing op zowel rapporten op gebeurtenisniveau als op geaggregeerde rapporten.
Compressiewoordenboektransport met gedeelde Brotli en gedeelde Zstandard
Deze functie biedt ondersteuning voor het gebruik van aangewezen eerdere antwoorden als extern woordenboek voor het coderen van inhoud bij het comprimeren van antwoorden met Brotli of Zstandard.
Bedrijven kunnen mogelijk compatibiliteitsproblemen ondervinden met hun netwerkinfrastructuur die HTTPS-verkeer onderschept en gevoelig is voor onbekende inhoudscoderingen. Het bedrijfsbeleid CompressionDictionaryTransportEnabled is beschikbaar om de compressiewoordenboektransportfunctie uit te schakelen.
Gelijktijdig soepel scrollIntoView()
De scrollIntoView() -methode met behavior: "smooth" stelt ontwikkelaars in staat om scrollcontainers te creëren die met een vloeiende scrollanimatie naar hun afstammelingen scrollen. Deze functie corrigeert de implementatie van de API in Chrome, zodat lopende scrollIntoView animaties niet worden geannuleerd door ongerelateerde scrollbewegingen op andere scrollcontainers.
Deze functie verhelpt ook gevallen waarin Chrome niet naar het fragmentanker van een pagina kan scrollen vanwege een concurrerende scrollIntoView die wordt aangeroepen wanneer de pagina wordt geladen.
Documentatie voor beeld-in-beeld: voeg een optie toe om de cache voor venstergrenzen te negeren.
Dit voegt een nieuwe parameter ( preferInitialWindowPlacement ) toe aan de document picture-in-picture API. Wanneer deze parameter op true is ingesteld, geeft dit de user agent een hint dat deze niet moet proberen de positie of grootte van de vorige document picture-in-picture van deze site opnieuw te gebruiken bij het openen van deze site.
Vaak wordt een beeld-in-beeldvenster van een document meerdere keren gesloten en opnieuw geopend voor dezelfde website, bijvoorbeeld bij het verplaatsen van een videoconferentie naar en van beeld-in-beeld. De user agent kan het beeld-in-beeldvenster opnieuw openen in de meest recente grootte en op de meest recente locatie, zodat het op de laatst ingestelde positie blijft en er continuïteit is tussen de beeld-in-beeldvensters. Als het nieuwe venster echter semantisch niet gerelateerd is aan het vorige venster, bijvoorbeeld als het een nieuw videogesprek betreft, kan de ontwikkelaar deze parameter gebruiken om de user agent te laten weten dat het venster mogelijk beter in de standaardpositie en -grootte kan worden geopend.
Leer hoe je het venster in de standaardpositie en -grootte kunt openen .
Verbeterde foutrapportage in IndexedDB voor leesfouten met grote waarden.
De rapportage van bepaalde foutgevallen die voorheen werden gerapporteerd met een DOMException en de melding "Failed to read large IndexedDB value" is gewijzigd.
Chrome genereert nu een DOMException met de naam "NotFoundError" wanneer het bestand met de gegevens die door een IDBRequest worden gelezen, niet op de schijf aanwezig is. Hierdoor kunnen websites de juiste corrigerende maatregelen nemen wanneer een onherstelbare fout optreedt. Corrigerende maatregelen kunnen onder andere bestaan uit het verwijderen van de vermelding uit de database, het informeren van de gebruiker of het opnieuw ophalen van de gegevens van de servers.
Focusseerbare scrollcontainers op het toetsenbord
Deze functie zorgt ervoor dat scrollelementen zonder focusseerbare subelementen standaard via het toetsenbord focusseerbaar zijn.
Dit is een belangrijke verbetering die ervoor zorgt dat scrollbalken en de inhoud ervan toegankelijker zijn voor alle gebruikers. U kunt meer lezen over de voordelen in het artikel over scrollbalken die met het toetsenbord kunnen worden gefocust . Scrollbalken die met het toetsenbord kunnen worden gefocust, zijn vanaf Chrome 130 standaard ingeschakeld. Als websites tijd nodig hebben om aan deze nieuwe functie te wennen, zijn er een aantal opties:
- Met de proefperiode voor het uitschakelen van focusseerbare scrollbalken op het toetsenbord kunt u deze functie tijdelijk uitschakelen op een bepaalde website. Deze proefperiode loopt tot en met Chrome versie 132 en eindigt op 18 maart 2025.
- Het
KeyboardFocusableScrollersEnabled enterprise policybeschikbaar vanaf Chrome 127, kan voor hetzelfde doel worden gebruikt.
Bied- en veilingdiensten voor een beschermd publiek
De Protected Audience API (voorheen bekend als FLEDGE) is een voorstel voor een privacy-sandbox, bedoeld voor remarketing en het creëren van aangepaste doelgroepen. Het is ontworpen om te voorkomen dat derden het surfgedrag van gebruikers op verschillende websites kunnen volgen.
Deze functie, 'Bieden en veilingen voor een beschermd publiek', beschrijft een manier om berekeningen voor een beschermd publiek 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 veiling voor een beschermd publiek te optimaliseren, waardoor rekenkracht en netwerkbandbreedte voor een apparaat vrijkomen.
Ondersteuning voor URL's die geen speciaal schema gebruiken.
Voorheen ondersteunde de URL-parser van Chrome geen niet-speciale URL's. De parser interpreteerde niet-speciale URL's alsof ze een "ondoorzichtig pad" hadden, wat niet overeenkomt met de URL-standaard. Nu interpreteert de URL-parser van Chromium niet-speciale URL's correct, conform de URL-standaard.
Zie bit.ly/url-non-special voor meer informatie.
WebAssembly JavaScript String Builtins
Deze functie maakt het mogelijk om veelgebruikte JavaScript-stringbewerkingen te importeren in WebAssembly. Hierdoor kunt u JavaScript-strings maken en bewerken vanuit WebAssembly, zelfs zonder ondersteuning binnen WebAssembly zelf. De prestaties blijven vergelijkbaar met die van ondersteunde stringreferenties.
WebGPU: Dubbele broncombinatie
Voegt de optionele GPU-functie "dual-source-blending" toe, waarmee de output van twee fragmentshaders kan worden gecombineerd tot één framebuffer. Deze techniek is met name nuttig voor toepassingen die complexe blending-bewerkingen vereisen, zoals toepassingen gebaseerd op Porter-Duff-blendmodi. Door de noodzaak voor frequente wijzigingen in de pipeline-statusobjecten te verminderen, kan dual-source-blending de prestaties en flexibiliteit verbeteren.
Web Serial: connected attribuut en RFCOMM-verbindingsgebeurtenissen
Deze functie voegt een boolean-attribuut SerialPort.connected toe. Dit attribuut retourneert true als de seriële poort logisch is verbonden. Voor bekabelde seriële poorten is een poort logisch verbonden als deze fysiek is aangesloten op het systeem. Voor draadloze seriële poorten is een poort logisch verbonden als het apparaat waarop de poort is aangesloten, open verbindingen heeft met de host.
Voorheen verstuurden alleen bekabelde seriële poorten verbindings- en ontkoppelingsgebeurtenissen. Met deze functie versturen Bluetooth RFCOMM seriële poorten deze gebeurtenissen ook wanneer de poort logisch verbonden of ontkoppeld raakt.
Deze functie is bedoeld om applicaties in staat te stellen te detecteren wanneer een Bluetooth RFCOMM seriële poort beschikbaar is, zonder de poort te hoeven openen.
Lees meer in Bluetooth RFCOMM-updates in Web Serial .
Origin-proeven zijn gaande.
In Chrome 130 kun je je aanmelden voor de volgende nieuwe Origin-proefversies .
Taaldetector-API
Een JavaScript API voor het detecteren van de taal van tekst , met betrouwbaarheidsniveaus.
WebAuthn-attestatieformaten
Ondersteun het veld attestationFormats van WebAuthn niveau 3.
WebAuthn Level 3 ondersteunt het opgeven van een voorkeursvolgorde voor authenticatieformaten in het nieuwe veld attestationFormats . Deze functie maakt ondersteuning hiervoor mogelijk op Android, waar aanbieders van wachtwoorden meerdere formaten kunnen ondersteunen.
Meld je aan voor de proefversie van WebAuthn attestationFormats.
Afschrijvingen en verwijderingen
Deze versie van Chrome introduceert de volgende afschrijvingen en verwijderingen. Ga naar ChromeStatus.com voor lijsten met geplande afschrijvingen, huidige afschrijvingen en eerdere verwijderingen.
In deze versie van Chrome is één functie verwijderd.
Verwijder expectedImprovement in DelegatedInkTrailPresenter
Het attribuut expectedImprovement geeft webontwikkelaars aan hoeveel verbetering de DelegatedInkTrails API zal opleveren voor hun huidige inktlatentie. Dit attribuut weegt echter niet op tegen de toename van de entropie bij het maken van digitale vingerafdrukken.
Deze versie van Chrome verwijdert één nieuwe functie.
De niet-standaard GPUAdapter requestAdapterInfo() methode wordt afgekeurd.
De asynchrone methode requestAdapterInfo() in WebGPU is overbodig, omdat ontwikkelaars GPUAdapterInfo al synchroon kunnen verkrijgen via het GPUAdapter info attribuut.