Chrome 129 bèta

Tenzij anders aangegeven, zijn de volgende 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 129 is vanaf 21 augustus 2024 een bètaversie. Je kunt het nieuwste downloaden op Google.com voor desktop of in de Google Play Store op Android.

CSS

Deze release voegt twee nieuwe CSS-functies toe en updatet drie functies.

CSS interpolate-size property en calc-size() functie

Met de CSS-eigenschap interpolate-size kan een pagina kiezen voor animaties en overgangen van trefwoorden met intrinsieke CSS-grootte, zoals auto , min-content en fit-content , in de gevallen waarin deze trefwoorden kunnen worden geanimeerd.

De CSS-functie calc-size() is een CSS-functie die lijkt op calc() , maar ondersteunt ook bewerkingen op precies één ondersteund trefwoord voor grootte. De momenteel ondersteunde trefwoorden voor het formaat zijn auto , min-content , max-content en fit-content . Andere maatzoekwoorden die in de toekomst mogelijk worden ondersteund, zijn stretch (momenteel ondersteund als voorvoegsel -webkit-fill-available ) en contain . Deze functie wordt gebruikt om de waarden in het midden van de animaties weer te geven die zijn toegestaan ​​door de eigenschap interpolate-size .

Hernoem het CSS- inset-area naar position-area

De CSSWG heeft besloten deze eigenschap te hernoemen van inset-area naar position-area . Chrome 129 levert position-area , de naam inset-area wordt in een toekomstige release verwijderd.

CSS-ankerpositionering: onverpakt inset-area()

Vervangt de functie inset-area() door inset-area-waarden rechtstreeks binnen position-try-fallbacks . Gebruik bijvoorbeeld in plaats van position-try-fallbacks:inset-area(top) position-try-fallbacks:top .

Update het CSS-achtergrondfilter om mirror edgeMode te gebruiken

De CSS-eigenschap backdrop-filter past een of meer filters toe op de achtergrond van een element. De achtergrond is de geschilderde inhoud die achter het element ligt. Een veelgebruikt filter is een vervaging waarmee ontwerpers dialoogvensters van matglas, video-overlays, doorschijnende navigatiekoppen en meer kunnen maken.

Dit werd aanvankelijk op dezelfde manier geïmplementeerd als een gewone vervaging, maar door monsters te nemen voorbij de randen van het element konden kleuren vanaf de randen inkleuren. De specificatie werd gewijzigd om pixels buiten de achtergrondranden te bemonsteren door de pixels aan de rand te dupliceren. Dit resulteert echter in extreem flikkeren van de inhoud wanneer deze de achtergrondrand binnendringt. De nieuwste specificatiewijziging weerspiegelt de achtergrond bij het samplen voorbij de rand, wat een soepele, geleidelijke introductie van nieuwe kleuren aan de randen mogelijk maakt zonder te veel nadruk te leggen op afzonderlijke kleurlijnen.

Web-API's

Blob-ondersteuning in WebRTC-gegevenskanalen

Implementeert RTCDataChannel.send(Blob) en de onMessage gebeurtenis kan nu optioneel gegevens van het type Blob ontvangen met behulp van het binaryType kenmerk.

Naast ondersteuning voor het verzenden van tekenreeksen en ArrayBuffers, kunt u er nu voor kiezen om in plaats daarvan een Blob te verzenden, zolang de grootte ervan kleiner is dan het SCTP-transport maxMessageSize zoals aangegeven in de WebRTC-specificatie .

Als het binaryType kenmerk is ingesteld op "blob" , is het onMessage-gebeurtenisgegevenskenmerk van het type Blob in plaats van het momenteel ondersteunde ArrayBuffer .

Compute Pressure WebDriver-extensieopdrachten

Bevat WebDriver-opdrachten voor het maken, verwijderen en bijwerken van drukbronmonsters voor virtuele drukbronnen . Dergelijke drukbronnen zijn niet afhankelijk van onderliggende hardware of besturingssysteemondersteuning en kunnen worden gebruikt voor testen.

Intl.DurationFormat

Biedt een methode voor het opmaken van duur, bijvoorbeeld "1 uur 40 min 30 sec" die meerdere landinstellingen ondersteunt.

Private Aggregation API: samenvoegen van bijdragen aan de clientzijde

Wijzigt de Private Aggregation API om histogrambijdragen samen te voegen met dezelfde bucket en filter-ID voordat deze worden ingesloten in de gecodeerde payload van het aggregeerbare rapport.

Privéaggregatie legt een limiet op aan het aantal bijdragen dat kan worden ingesloten in één aggregeerbaar rapport, waarbij eventuele aanvullende bijdragen worden geschrapt. Door bijdragen waar mogelijk samen te voegen, kunnen we extra nut uit de limiet halen. Houd er rekening mee dat, afgezien van het laten vallen van overtollige bijdragen, het samenvoegen van dit soort bijdragen geen enkele impact zou mogen hebben op de uiteindelijke resultaten, bijvoorbeeld samenvattende rapporten.

scheduler.yield()

Biedt een methode om controle over te dragen aan de browser, die kan worden gebruikt om lange taken op te splitsen. Het wachten op de belofte die wordt geretourneerd door scheduler.yield() zorgt ervoor dat de huidige taak wordt opgeleverd en wordt voortgezet in een nieuwe browsertaak. Dit kan worden gebruikt om responsiviteitsproblemen veroorzaakt door lange taken te verbeteren. Voortzettingen krijgen prioriteit om prestatieproblemen van bestaande alternatieven te verminderen.

Webverificatie-API: JSON-serialisatiemethoden

Met de methoden WebAuthn PublicKeyCredential.toJSON() , parseCreationOptionsFromJSON() en parseRequestOptionsFromJSON() kunnen ontwikkelaars een WebAuthn-antwoord serialiseren naar een JSON-object of een WebAuthn-verzoekobject deserialiseren vanuit de JSON-representatie ervan.

WebGPU Extended Range (HDR)-ondersteuning

Voegt tone mapping-parameters toe aan de WebGPU-canvasconfiguratie en voegt opties toe van standard (het huidige gedrag van het beperken van inhoud tot het SDR-bereik van het beeldscherm) als standaard, en extended (waarbij deze beperking niet wordt opgelegd) als nieuw gedrag. Hierdoor kan WebGPU-inhoud het volledige bereik van een scherm gebruiken.

Oorsprongsproeven zijn aan de gang

In Chrome 129 kunt u zich aanmelden voor de volgende nieuwe Origin-proefversies .

FileSystemObserver-interface

De FileSystemObserver- interface informeert websites over wijzigingen in het bestandssysteem. Sites observeren wijzigingen in bestanden en mappen op het lokale apparaat van de gebruiker (zoals gespecificeerd in WICG/file-system-access ) of in het Bucket File System (zoals gespecificeerd in fs.spec.whatwg.org ), en worden op de hoogte gebracht van basisinformatie over wijzigingen , zoals het wijzigingstype.

Registreer u voor de FileSystemObserver origin-proefversie .

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 0.0.0.0 voor particuliere netwerktoegang

Chrome blokkeert de toegang tot IP-adres 0.0.0.0 voordat Private Network Access (PNA) volledig wordt uitgerold.

Chrome beëindigt directe toegang tot particuliere netwerkeindpunten vanaf openbare websites als onderdeel van de PNA-specificatie . Services die luisteren op localhost ( 127.0.0.0/8 ) worden volgens de specificatie als privé beschouwd. De PNA-beveiliging van Chrome kan worden omzeild met behulp van het IP-adres 0.0.0.0 om toegang te krijgen tot services die luisteren op de localhost op macOS en Linux.

Dit kan ook worden misbruikt bij DNS-rebinding-aanvallen gericht op een webapplicatie die luistert op de localhost.

In deze versie van Chrome worden drie functies verwijderd.

Verwijder het argument includeShadowRoots op DOMParser

Het argument includeShadowRoots was een nooit gestandaardiseerd argument voor de functie DOMParser.parseFromString() , die er was om imperatieve parsering van HTML-inhoud mogelijk te maken die declaratieve schaduw-DOM bevat. Dit werd verzonden in Chrome 90 als onderdeel van de eerste verzending van declaratieve schaduw-DOM.

Nu er een gestandaardiseerde versie van deze functie beschikbaar is met de methoden setHTMLUnsafe() en parseHTMLUnsafe() , wordt het niet-standaard argument includeShadowRoots verwijderd. De code moet als volgt worden bijgewerkt:

In plaats van:

((new DOMParser()).parseFromString(html,'text/html',{includeShadowRoots: true});

Gebruik:

Document.parseHTMLUnsafe(html);

Verwijder niet-standaard declaratieve schaduw-DOM-serialisatie

De prototype-implementatie van declaratieve schaduw-DOM bevatte een methode genaamd getInnerHTML() werd gebruikt om DOM-bomen met schaduwwortels te serialiseren. Dat deel van het prototype was niet gestandaardiseerd met de rest van de declaratieve schaduwdom, en in plaats daarvan werd een vervanging ontworpen getHTML() .

Daarom wordt de oude getInnerHTML() methode nu uit Chrome verwijderd. Gebruik getHTML() als vervanging, die binnenkort interoperabel zal zijn in alle browsers.

Verwijder PointerEvent.getCoalescedEvents() uit onveilige contexten

De Pointer Events Working Group heeft PointerEvent.getCoalescedEvents() ruim vier jaar geleden beperkt tot beveiligde contexten, waardoor de API uit onveilige contexten werd verwijderd. Chrome heeft oorspronkelijk het oude gedrag geleverd en heeft de specificatiewijziging niet onmiddellijk gevolgd vanwege compatibiliteitsproblemen.

We verwijderen het nu uit onveilige contexten omdat het Chrome-gebruik in onveilige contexten erg laag bleek te zijn.