Chrome 107 bèta

Toevoegingen aan de Screen Capture API, interpolatie van eigenschappen van CSS-rastersjablonen en meer.

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 107 is vanaf 29 september 2022 een bètaversie. Je kunt het nieuwste downloaden op Google.com voor desktop of in de Google Play Store op Android.

Interpolatie van CSS grid-template

In CSS Grid kunnen ontwikkelaars met de eigenschappen grid-template-columns en grid-template-rows respectievelijk lijnnamen definiëren en de grootte van gridkolommen en -rijen volgen. Dankzij onze bijdragers bij Microsoft ondersteunen we nu interpolatie voor deze eigenschappen. Rasterlay-outs kunnen nu soepel tussen statussen overgaan, in plaats van halverwege een animatie of overgang te snappen.

Besturingselementen voor het delen van schermen die de privacy behouden

De Screen Capture API introduceert toevoegingen aan de bestaande Media Capture en Streams API waarmee de gebruiker een scherm of gedeelte van een scherm (zoals een venster) kan selecteren om vast te leggen als mediastream. Deze stream kan vervolgens via het netwerk worden opgenomen of met anderen worden gedeeld. In deze bèta zijn enkele nieuwe functies aan deze API toegevoegd.

DisplayMediaStreamConstraints.selfBrowserSurface

Tip waarmee webapplicaties de browser kunnen instrueren of, bij het aanroepen van getDisplayMedia() , het huidige tabblad moet worden uitgesloten van de lijst met tabbladen die aan de gebruiker wordt aangeboden.

Dit helpt onbedoelde zelfopname te voorkomen. Wanneer gebruikers per ongeluk het tabblad kiezen waarop de app actief is, ontstaat er een Hall-of-Mirrors-effect, wat gebruikers in verwarring brengt en discussies met externe gebruikers doet ontsporen.

DisplayMediaStreamConstraints.surfaceSwitching

Voegt een optie toe om programmatisch te bepalen of Chrome een knop toont om tussen tabbladen te schakelen terwijl het scherm wordt gedeeld. Deze optie wordt doorgegeven aan navigator.mediaDevices.getDisplayMedia() .

Met de knop 'Deel dit tabblad in plaats daarvan' kunnen gebruikers naadloos wisselen welk tabblad ze delen, zonder dat ze het tabblad voor videoconferenties opnieuw hoeven te selecteren, op een knop moeten klikken om getDisplayMedia() opnieuw te starten of een nieuw tabblad moeten selecteren uit een lange lijst met tabbladen. Dit gedrag wordt voorwaardelijk zichtbaar omdat niet alle webtoepassingen dit gedrag aankunnen.

MediaTrackConstraintSet.displaySurface

Wanneer getDisplayMedia() wordt aangeroepen, biedt de browser de gebruiker een keuze uit weergaveoppervlakken: tabbladen, vensters of monitoren. Met behulp van de displaySurface-beperking kan de webtoepassing nu een hint geven aan de browser als deze er de voorkeur aan geeft dat een bepaald oppervlaktetype prominenter aan de gebruiker wordt aangeboden.

Lees meer over hoe deze functies kunnen helpen onbedoeld te veel delen te voorkomen.

Geef de blokkeringsstatus weer in Resource Timing

Voegt een veld toe aan PerfomanceResourceTiming om de weergaveblokkeringsstatus van een resource aan te geven. Momenteel is het, vanuit het perspectief van ontwikkelaars, de enige manier om te bepalen welke bronnen daadwerkelijk weergaveblokkering veroorzaken, door te vertrouwen op complexe heuristieken. Het nieuwe veld zou in plaats daarvan een direct signaal hierover geven.

Jokertekens in de oorsprong van het machtigingsbeleid

Deze functie voegt ondersteuning toe voor jokertekens in het machtigingenbeleid dat is gestructureerd als SCHEME://*.HOST:PORT (bijvoorbeeld https://*.foo.com/), waarbij een geldige oorsprong kan worden opgebouwd uit SCHEME://HOST:PORT (bijvoorbeeld https://foo.com/). Dit vereist dat HOST minimaal eTLD+1 is (een registreerbaar domein). Dit betekent dat https://*.bar.foo.com/ werkt, maar https://*.com/ niet. Jokertekens in de schema- en poortsectie worden niet ondersteund en https://*.foo.com/ delegeert niet naar https://foo.com/ . Voorheen moest een machtigingsbeleid er mogelijk als volgt uitzien:

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://cdn1.foo.com" "https://cdn2.foo.com")

Met deze functie kunt u het volgende gebruiken:

permissions-policy: ch-ua-platform-version=(self "https://foo.com" "https://*.foo.com")

Ondersteun het rel attribuut op <form> -elementen

Deze functie voegt het rel attribuut toe aan formulierelementen, wat het mogelijk maakt om te voorkomen dat window.opener aanwezig is op websites waarnaar wordt genavigeerd door formulierelementen die rel=noopener hebben en voorkomt dat de referer-header wordt verzonden met rel=noreferrer .

Oorsprongsproeven

Deze versie van Chrome bevatte twee nieuwe origin-proefversies .

Declaratieve PendingBeacon-API

Een stateful beacon-API waarmee de browser kan bepalen wanneer beacons worden verzonden. Een beacon is een bundel gegevens die naar een backend-server wordt verzonden, zonder een bepaald antwoord te verwachten. Het is vaak wenselijk om deze aan het einde van het bezoek van een gebruiker aan een pagina te verzenden, maar er is geen goed moment om dat 'verzenden'-oproep te doen. Deze API delegeert het verzenden naar de browser zelf, zodat deze bakens kan ondersteunen bij het verwijderen van pagina's of bij het verbergen van pagina's, zonder dat de ontwikkelaar verzendoproepen op precies de juiste momenten hoeft te implementeren.

Deze proefperiode loopt naar verwachting tot Chrome 109. Registreer u hier voor de proefperiode .

Machtigingen-beleid: lossen

Met deze functie kunnen pagina's de uitvoering van unload-gebeurtenishandlers uitschakelen. Het doel is om sites die alle losbehandelaars hebben verwijderd, toe te staan ​​om ervoor te zorgen dat ze niet per ongeluk nieuwe toevoegen. Dit zal sites helpen bij het migreren van unload-gebeurtenishandlers en daardoor het aantal BFCache-hits verbeteren .

Deze proefperiode loopt naar verwachting tot Chrome 109. Registreer u hier voor de proefperiode .

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.

Verwacht-CT

Expect-CT is een HTTP-header waarmee websites zich konden aanmelden voor het afdwingen van Certificate Transparency voordat dit standaard werd afgedwongen. Het heeft ook rapportagefunctionaliteit om ontwikkelaars te helpen CT-misconfiguraties te ontdekken.

De Expect-CT HTTP-header is ontworpen om de overgang naar universele Certificate Transparency (CT)-handhaving te helpen, door hoogwaardige websites toe te staan ​​zich aan te melden voor CT-handhaving of rapportage voor betere beveiliging voordat CT-handhaving vereist was (door Chrome) op alle openbare websites . Expect-CT heeft nu echter zijn nut overleefd. Chrome vereist nu CT op alle openbare websites, dus er is geen beveiligingswaarde meer voor Expect-CT . Geen enkele andere browser heeft Expect-CT geïmplementeerd, dus het verwijderen ervan is geen probleem met de interoperabiliteit.