Chrome 131 bèta

Gepubliceerd: 16 oktober 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 131 is een bètaversie sinds 16 oktober 2024. U kunt de nieuwste versie downloaden op Google.com voor desktop of in de Google Play Store voor Android.

CSS

Deze release voegt acht nieuwe CSS-functies toe.

CSS-ankerpositionering: anchor-scope

Met de eigenschap anchor-scope kunt u de zichtbaarheid van ankernamen beperken tot een bepaalde subboom.

CSS font-variant-emoji

De CSS-eigenschap font-variant-emoji biedt een manier om te kiezen tussen gekleurde (emoji-stijl) en monochrome (tekst-stijl) emoji-tekens. Dit kan ook door een emoji-variatieselector toe te voegen, specifiek U+FE0E voor tekst en U+FE0F voor emoji, na elk emoji-codepunt.

CSS-markeringsovererving

Bij CSS highlight-overerving erven de CSS highlight-pseudoklassen, zoals ::selection en ::highlight , hun eigenschappen via de pseudo-highlightketen in plaats van via de elementketen. Het resultaat is een intuïtiever model voor de overerving van eigenschappen in highlights.

Lees voor meer informatie de blogpost 'Inheritance changes for CSS selection styling' van Stephen Chenney van Igalia.

Verbeteringen aan de opmaakstructuur van <details> en <summary> elementen.

Ondersteuning voor meer CSS-styling voor de structuur van <details> en <summary> -elementen, zodat deze elementen in meer gevallen gebruikt kunnen worden bij het bouwen van uitklap- of accordeonwidgets op het web. Deze wijziging heft met name de beperkingen op die het instellen van de display-eigenschap op deze elementen verhinderden, en voegt een ::details-content pseudo-element toe om de container te stylen voor het deel dat uitklapt en inklapt.

@page marge vakjes

Voeg ondersteuning toe voor paginamarges bij het afdrukken van een webdocument of het exporteren ervan als PDF.

Met de @page margevakken kunt u de inhoud in het margegebied van een pagina definiëren, bijvoorbeeld om aangepaste kop- en voetteksten te gebruiken in plaats van de standaardkop- en voetteksten van de browser.

Een margin box wordt gedefinieerd met behulp van een `@at`-regel binnen een CSS @page -regel. Het uiterlijk en de inhoud van een margin box worden gespecificeerd met CSS-eigenschappen binnen de `@at`-regel, waaronder de content eigenschap. Tellers worden ook ondersteund voor paginanummering. De specificatie definieert twee speciale tellernamen: page voor het huidige paginanummer en pages voor het totale aantal pagina's.

@property ondersteuning <string> syntax

Ondersteuning voor de syntaxis <string> componentnaam voor geregistreerde aangepaste eigenschappen.

Ondersteuning voor currentcolor in de syntax voor relatieve kleuren.

Sta toe dat relatieve kleuren in CSS (met behulp van het trefwoord from ) de currentcolor als basis gebruiken. Hierdoor kun je complementaire kleuren instellen, gebaseerd op de tekstkleur van een element, voor de randen, schaduwen of achtergronden van dat element.

Deze functie omvat ook gebruiksscenario's waarbij kleurfuncties genest zijn met een afhankelijkheid van currentcolor, bijvoorbeeld color-mix(in srgb, rgb(from currentcolor rgb), white)) of rgb(from rgb(from currentcolor 1 gb) bgr) .

Ondersteuning voor externe SVG-bronnen voor de eigenschappen clip-path , fill , stroke en marker-*

Deze functie biedt ondersteuning voor externe verwijzingen naar knippaden, markeringen en verfservers (voor de eigenschappen 'vulling' en 'lijn'). Bijvoorbeeld: clip-path: url("resources.svg#myPath") .

Web-API's

Direct Sockets API

Hiermee kunnen geïsoleerde webapplicaties rechtstreeks TCP- (Transmission Control Protocol) en UDP- (User Datagram Protocol) communicatie tot stand brengen met netwerkapparaten en -systemen, en inkomende verbindingen ontvangen en accepteren.

De header Speculation-Rules vrijstellen van CSP-beperkingen

De integratie tussen speculatieregels en CSP wordt bijgewerkt, zodat CSP alleen van toepassing is op <script type=speculationrules> en niet op de Speculation-Rules header. Het scriptbeleid van CSP is bedoeld om te beschermen tegen het injecteren van scripts in HTML, en het dreigingsmodel van CSP heeft geen betrekking op HTTP-headers. Dit maakt het eenvoudiger om speculatieregels te implementeren vanaf CDN's en andere edge-servers.

FedCM als vertrouwenssignaal voor de Storage Access API

Hiermee worden de FedCM- en Storage Access-API's op elkaar afgestemd, doordat een eerdere FedCM-toekenning een geldige reden wordt om een ​​verzoek om toegang tot de opslag automatisch goed te keuren.

Wanneer een gebruiker toestemming geeft om zijn of haar identiteit te gebruiken bij een externe identiteitsprovider (IdP) op een relying party (RP), vereisen veel IdP's cookies van derden om correct en veilig te functioneren. Dit voorstel beoogt aan die vereiste te voldoen op een privacyvriendelijke en veilige manier door de machtigingscontroles van de Storage Access API (SAA) bij te werken, zodat deze niet alleen de machtiging accepteert die wordt verleend via een storage access prompt, maar ook de machtiging die wordt verleend via een FedCM prompt.

Een belangrijk kenmerk van dit mechanisme is dat de toekenning beperkt blijft tot gevallen die expliciet zijn toegestaan ​​door de RP met het FedCM-toestemmingsbeleid, waardoor een per-frame controle voor de RP wordt afgedwongen en passieve surveillance door de IdP wordt voorkomen die verder gaat dan de mogelijkheden die FedCM al verleent.

COOP-waarde noopener-allow-popups

Sommige applicaties kunnen verschillende beveiligingsniveaus hebben. In die gevallen kan het nuttig zijn om te voorkomen dat scripts die in de ene applicatie draaien, pagina's van een andere applicatie van dezelfde oorsprong kunnen openen en scripten.

In dergelijke gevallen kan het nuttig zijn voor een document om ervoor te zorgen dat de gebruiker die het opent het niet kan scripten, zelfs als het openende document van dezelfde oorsprong is. De Cross-Origin-Opener-Policy-waarde noopener-allow-popups stelt documenten in staat om dat gedrag te definiëren.

Private Aggregation API: verhoog de bijdragelimiet naar 100 voor bellers uit de beveiligde doelgroep.

Hiermee kunnen scriptuitvoerders van Protected Audience tot 100 bijdragen per privé-aggregatierapport leveren, in plaats van de huidige limiet van 20.

Private Aggregation beperkt het aantal histogrambijdragen dat in één aggregeerbaar rapport kan worden opgenomen, waarbij eventuele extra bijdragen worden verwijderd. Gebruikers van Shared Storage kunnen deze limiet omzeilen door een andere Shared Storage-bewerking aan te roepen. Gebruikers van Protected Audience hebben echter geen permanente opslag, waardoor ze hun overtollige bijdragen aan het einde van hun veiling verliezen. Merk op dat deze wijziging privacyneutraal is, aangezien de bijdragen van de API nog steeds worden beperkt door hetzelfde privacybudget.

Door de opvulling zal elk rapport voor een beschermde doelgroep een grotere hoeveelheid gegevens bevatten, zelfs als de hogere bijdragegrens niet nodig was. We verwachten dat deze grotere rapporten de operationele kosten van de aggregatiedienst zullen verhogen.

Selecteer parser-relaxatie

Deze wijziging zorgt ervoor dat de HTML-parser naast <option> , <optgroup> en <hr> ook andere tags in <select> toestaat.

Deze wijziging ondersteunt de aanpasbare <select> -functie, maar wordt eerst doorgevoerd omdat dit ook afzonderlijk kan worden gedaan en er een compatibiliteitsrisico bestaat waarover het Chrome-team graag feedback wil ontvangen.

WebGPU: Clipafstanden

Voegt de optionele GPU-functie clip-distances toe, waarmee gebruikers zelf clip-afstanden kunnen instellen in de uitvoer van vertex shaders. Deze techniek is met name handig voor toepassingen waarbij alle vertices in een scène die buiten een door de gebruiker gedefinieerd vlak liggen, moeten worden afgeknipt, zoals veel CAD-toepassingen.

WebGPU: GPUCanvasContext getConfiguration()

Nadat GPUCanvasContext configure() is aangeroepen met een configuratiewoordenboek, kunt u de GPUCanvasContext getConfiguration() methode gebruiken om de configuratie van de canvascontext te controleren. Deze bevat de leden GPU device , format , usage , viewFormats , colorSpace , toneMapping en alphaMode . Zoals besproken in issue 4828 , kunnen webapps deze gebruiken om te detecteren of HDR-canvas wordt ondersteund in WebGPU.

WebHID op dedicated workers

Hiermee kunt u WebHID inschakelen binnen speciale worker-contexten. Dit maakt het mogelijk om zware I/O-bewerkingen en de verwerking van gegevens van een HID-apparaat op een aparte thread uit te voeren, waardoor de prestatie-impact op de hoofdthread wordt verminderd.

WebRTC RTCRtpEncodingParameters.scaleResolutionDownTo

Een API die WebRTC-encoders configureert om invoerframes te schalen als deze groter zijn dan de opgegeven maxWidth en maxHeight . Deze API is vergelijkbaar met scaleResolutionDownBy met als verschil dat resolutiebeperkingen in absolute termen worden uitgedrukt (bijvoorbeeld 640x360) in plaats van relatieve termen (bijvoorbeeld schalen met factor 2), waardoor racecondities die verband houden met het dynamisch wijzigen van de invoerframegrootte worden voorkomen.

Nieuwe oorsprongsproeven

In Chrome 131 kun je je aanmelden voor de volgende nieuwe Origin-proefversies .

Afspeelstatistieken voor WebAudio

Met de functie AudioContext.playoutStats kan een applicatie de kwaliteit en latentie van audio-weergave via WebAudio meten.

Samenvattings-API

Een JavaScript API voor het genereren van samenvattingen van invoertekst, ondersteund door een AI-taalmodel.

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 zijn drie functies verwijderd.

Verwijder de CSS-eigenschap inset-area voor ankerpositionering.

Met het besluit van de CSS Working Group om de eigenschap inset-area te hernoemen naar position-area , zorgt deze verwijdering voor een schonere implementatie in Chromium, waardoor het een standaardconforme functie wordt.

Verwijder de mogelijkheid om BeforeunloadEventCancelByPreventDefault uit te schakelen.

De functie BeforeunloadEventCancelByPreventDefault werd geïntroduceerd in Chrome 117, maar er is een bedrijfsbeleid dat het mogelijk maakt deze vlag geforceerd uit te schakelen. Dit bedrijfsbeleid wordt verwijderd in Chrome 131.

Verwijder de niet-standaard GPUAdapter requestAdapterInfo() methode.

De WebGPU-werkgroep vond het onpraktisch dat requestAdapterInfo() een toestemmingsprompt zou activeren, dus hebben ze die optie verwijderd en vervangen door het info attribuut, zodat webontwikkelaars dezelfde GPUAdapterInfo waarde synchroon kunnen verkrijgen.