Gepubliceerd: 25 juni 2025
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 139 is een bètaversie vanaf 25 juni 2025. U kunt de nieuwste versie downloaden op Google.com voor desktop of in de Google Play Store voor Android.
CSS
Deze release voegt zes nieuwe CSS- en UI-functies toe.
Het kortsluiten van var() en attr()
Als de fallback niet wordt gebruikt, evalueren de functies var() en attr() zonder te zoeken naar cycli in die fallback. De volgende CSS werkt, omdat --green en --blue bestaan.
--green: green;
--blue: blue;
--a: var(--green, var(--b));
--b: var(--blue, var(--a));
CSS-eigenschap caret-animation
Chrome ondersteunde al animatie van de caret-color eigenschap, maar bij animatie verstoorde het standaard knippergedrag van de cursor de animatie. De CSS-eigenschap ` caret-animation heeft twee mogelijke waarden: auto en manual , waarbij auto de standaardinstelling van de browser (knipperen) betekent en manual betekent dat de webontwikkelaar de cursoranimatie beheert. Met deze eigenschap kunnen gebruikers het knipperen ook uitschakelen via een eigen stylesheet.
Hoekvorming
Schakel de mogelijkheid in om hoeken te stylen, bovenop de bestaande border-radius , door de vorm of kromming van de hoek te specificeren. Hiermee kun je vormen zoals afgeronde hoeken (squircles), inkepingen en uithollingen creëren en ertussen animeren. Lees meer in dit artikel van Amit Sheen .
Ga door met het uitvoeren van overgangen wanneer u overschakelt naar de initiële overgangswaarde.
Wanneer de eigenschappen van overgangen veranderen, is het de bedoeling dat deze alleen van invloed zijn op nieuw gestarte overgangen. Dit betekent dat als u de overgangseigenschappen wijzigt, deze overgangsanimaties doorgaan met de eerder ingestelde duur, easing, enzovoort, tenzij u ook de eigenschappen wijzigt die actieve overgangsanimaties bevatten. Blink annuleerde onterecht overgangen wanneer de overgangseigenschap was ingesteld op "none", terwijl dit niet gebeurt als alleen de overgangsduur wordt gewijzigd. Met deze functie zal Blink consistent zijn met WebKit en Gecko, waardoor actieve overgangen kunnen blijven draaien, tenzij of totdat de waarde van hun eigenschap verandert en een nieuwe overgangsupdate wordt geactiveerd.
CSS-aangepaste functies
Aangepaste functies lijken op aangepaste eigenschappen, maar in plaats van een enkele, vaste waarde terug te geven, retourneren ze waarden op basis van andere aangepaste eigenschappen, parameters en voorwaarden.
@function --negate(--value) {
result: calc(var(--value) * -1);
}
div {
--gap: 1em;
margin-top: --negate(var(--gap));
}
Ondersteuning voor width en height als presentatiekenmerken op geneste <svg> -elementen
Ondersteuning voor het toepassen width en height als presentatiekenmerken op geneste <svg> -elementen via zowel SVG-markup als CSS. Deze dubbele aanpak biedt nog meer flexibiliteit, waardoor u SVG-elementen efficiënter kunt beheren en stylen binnen complexe ontwerpen.
Web-API's
Web App Manifest: specificeer de geschiktheid voor updates, pictogram-URL's zijn Cache-Control: immutable
Specificeer een algoritme voor het bepalen van de geschiktheid voor updates in de manifestspecificatie. Dit maakt het updateproces deterministischer en voorspelbaarder, waardoor ontwikkelaars meer controle krijgen over of (en wanneer) updates moeten worden toegepast op bestaande installaties. Bovendien kan hiermee de 'updatecontrolebeperking' die gebruikersagenten momenteel moeten implementeren om verspilling van netwerkbronnen te voorkomen, worden verwijderd.
Prestatieverbeteringen voor dieptesensoren in WebXR
Deze module introduceert verschillende nieuwe mechanismen om het gedrag van de dieptesensorfunctie binnen een WebXR-sessie aan te passen, met als doel de prestaties van het genereren of gebruiken van de dieptebuffer te verbeteren. De belangrijkste mechanismen zijn: de mogelijkheid om de ruwe of vloeiende dieptebuffer op te vragen, de mogelijkheid om de runtime te vragen het leveren van de dieptebuffer te stoppen of te hervatten, en de mogelijkheid om een dieptebuffer te leveren die niet exact overeenkomt met het gezichtsveld van de gebruiker, zodat de user agent niet bij elk frame onnodige herprojecties hoeft uit te voeren.
Sta meer tekens toe in JavaScript DOM API's
De HTML-parser heeft altijd (of al lange tijd) een breed scala aan geldige tekens en namen voor elementen en attributen toegestaan, maar de JavaScript DOM API's die dezelfde elementen en attributen creëren, zijn strenger en komen niet overeen met de parser. Deze wijziging versoepelt de validatie van de JavaScript DOM API's zodat deze overeenkomt met die van de HTML-parser.
request-close invoker command
Dialoogvensters kunnen op verschillende manieren worden gesloten, maar soms willen ontwikkelaars de mogelijkheid hebben om sluiting te voorkomen. Om dit te bereiken, activeren dialoogvensters een annuleringsgebeurtenis. Oorspronkelijk werd deze alleen geactiveerd via een sluitingsverzoek (bijvoorbeeld door Esc -toets te drukken), maar recent is er een JavaScript-functie ` requestClose() toegevoegd die ook de annuleringsgebeurtenis activeert. De request-close opdracht voegt deze nieuwe mogelijkheid toe aan de API voor declaratieve aanroepopdrachten.
WebGPU: Ondersteuning voor 3D-texturen in de gecomprimeerde formaten BC en ASTC.
De WebGPU-functies texture-compression-bc-sliced-3d en texture-compression-astc-sliced-3d voegen respectievelijk 3D-textuurondersteuning toe voor BC- en ASTC-gecomprimeerde formaten.
Beveiligde betalingsbevestiging: browsergebonden sleutels
Voegt een extra cryptografische handtekening toe aan de bevestiging van veilige betalingen en het aanmaken van inloggegevens. De bijbehorende privésleutel wordt niet gesynchroniseerd tussen apparaten. Dit helpt webontwikkelaars te voldoen aan de vereisten voor apparaatkoppeling bij betalingstransacties.
Veilige betalingsbevestiging: UX-vernieuwing
Deze update vernieuwt de UX-elementen voor het SPC-dialoogvenster in Android Chrome. Naast de UX-presentatie worden de volgende elementen toegevoegd:
- Verkopers kunnen optioneel een lijst met logo's van betaalproviders opgeven die gerelateerd zijn aan de betaling en die worden weergegeven.
- Afhankelijk van of de gebruiker de transactie zonder SPC wil voortzetten of wil annuleren, worden er verschillende uitvoerstatussen naar de handelaar teruggestuurd.
- Voegt een nieuw veld voor betalingsdetails toe aan het betaalmiddel, zodat de tekst over twee regels wordt weergegeven.
core-features-and-limits van WebGPU
De aanduiding core-features-and-limits geeft aan dat een WebGPU-adapter en -apparaat de kernfuncties en -limieten van de specificatie ondersteunen.
Prioriteitskandidaat voor scrollverankering fix
Momenteel selecteert het scroll-ankeralgoritme prioriteitskandidaten wanneer deze beschikbaar zijn als ankerdoelen. De prioriteitskandidaten zijn momenteel een geselecteerd bewerkbaar element en markeringen in de pagina. Dit kan leiden tot een suboptimale gebruikerservaring als er een groot geselecteerd bewerkbaar element is waarvan de inhoud buiten beeld wordt gewijzigd (de cursor verschuift daardoor). Deze oplossing wijzigt het algoritme: in plaats van de prioriteitskandidaat als anker te selecteren, wordt deze kandidaat gebruikt als bereik of basis voor het reguliere ankerselectiealgoritme, dat het diepst zichtbare element op het scherm als anker selecteert.
Ondersteuning voor het async attribuut voor SVG <script> -elementen
De SVGScriptElement interface in SVG 2.0 introduceert het async attribuut, vergelijkbaar met de HTMLScriptElement . Dit attribuut maakt het mogelijk scripts asynchroon uit te voeren, wat de prestaties en responsiviteit van webapplicaties die SVG gebruiken verbetert.
Webspraak-API op het apparaat
Deze functie voegt ondersteuning voor spraakherkenning op het apparaat zelf toe aan de Web Speech API, waardoor websites ervoor kunnen zorgen dat noch audio, noch getranscribeerde spraak naar een externe dienst wordt verzonden voor verwerking. Websites kunnen de beschikbaarheid van spraakherkenning op het apparaat voor specifieke talen opvragen, gebruikers vragen de benodigde resources voor spraakherkenning op het apparaat te installeren en naar behoefte kiezen tussen spraakherkenning op het apparaat zelf of in de cloud.
Wis window.name voor navigaties tussen sites die de browsecontextgroep wijzigen
De waarde van de eigenschap window.name blijft momenteel behouden gedurende de hele levensduur van een tabblad, zelfs bij navigatie die van browsecontextgroep wisselt. Dit kan leiden tot het lekken van informatie en mogelijk gebruikt worden als een manier om gebruikers te traceren. Het wissen van de eigenschap window.name lost dit probleem op. Deze wijziging zou een laag risico moeten hebben, aangezien het opzoeken van een browsecontext op naam al niet werkt als deze zich in een andere browsecontextgroep bevindt. De naam is dus in feite niet nuttig.
Bedrijfsbeleid: ClearWindowNameCrossSiteBrowsing (werkt niet meer in Chrome 142).
Web-app-bereikuitbreidingen
Voegt een "scope_extensions" -veld toe aan het manifest van de webapp, waarmee webapps hun bereik kunnen uitbreiden naar andere origins.
Dit maakt het mogelijk voor websites die meerdere subdomeinen en topdomeinen beheren om als één webapplicatie te worden gepresenteerd. Vereist dat de vermelde origins de koppeling met de webapplicatie bevestigen met behulp van een configuratiebestand met de extensie .well-known/web-app-origin-association .
Specificatieconforme JSON MIME-typedetectie
Chromium herkent nu alle geldige JSON MIME-typen zoals gedefinieerd door de WHATWG mimesniff-specificatie. Dit omvat elk MIME-type waarvan het subtype eindigt op +json , naast de traditionele application/json en text/json . Deze wijziging zorgt ervoor dat web-API's en -functies die afhankelijk zijn van JSON-detectie consistent werken met de webplatformstandaard en andere browsers. Een belangrijke reden voor deze wijziging is het corrigeren van het importgedrag van JSON-modules, waarbij voorheen geldige JSON MIME-typen zoals text/html+json en image/svg+json niet als modules konden worden geladen.
Privé-aggregatie-API: rapportage van aggregatiefouten
Er kunnen verschillende foutcondities optreden bij het gebruik van de Private Aggregation API. Zo kan het privacybudget bijvoorbeeld opraken, waardoor er geen verdere histogrambijdragen meer mogelijk zijn. Deze functie stelt ontwikkelaars in staat om histogrambijdragen te registreren die alleen verzonden moeten worden als een bepaald type fout optreedt. Deze functie ondersteunt het meten van de frequentie van de foutcondities en het splitsen van deze metingen op relevante, door de ontwikkelaar gespecificeerde dimensies (bijvoorbeeld de versie van de geïmplementeerde code). Omdat de fouten zelf mogelijk informatie bevatten die meerdere sites omvat, kunnen we ze niet zomaar aan de pagina tonen zonder cookies van derden. In plaats daarvan hergebruikt deze functie de bestaande geaggregeerde, geruisde rapportagepipelines via de Aggregation Service.
API voor crashrapportage: Geef crash-reporting op om alleen crashrapporten te ontvangen.
Deze functie zorgt ervoor dat ontwikkelaars alleen crashrapporten ontvangen door het eindpunt met de naam crash-reporting op te geven. Standaard worden crashrapporten naar het default eindpunt gestuurd, dat naast crashrapporten ook vele andere soorten rapporten ontvangt. Ontwikkelaars kunnen een aparte URL opgeven voor het bekende eindpunt crash-reporting , zodat crashrapporten daarheen worden doorgestuurd in plaats van naar het default eindpunt.
Verminder de identificatie van vingerafdrukken in de Accept-Language headerinformatie.
Vermindert de hoeveelheid informatie die de Accept-Language headerwaarde in HTTP-verzoeken en in navigator.languages weergeeft. In plaats van een volledige lijst met de voorkeurstalen van de gebruiker in elk HTTP-verzoek met de Accept-Language header te verzenden, verzenden we nu de meest geprefereerde taal van de gebruiker in de Accept-Language header. Om compatibiliteitsrisico's te minimaliseren, wordt bij de eerste lancering de hoeveelheid informatie in de HTTP-header verminderd. We zullen de bijbehorende JavaScript-getters navigator.languages in de toekomst verder verminderen.
Activeer een foutmelding in plaats van een uitzondering te genereren voor een geblokkeerde CSP-worker.
Wanneer een object wordt geblokkeerd door Content Security Policy (CSP), genereert Chrome momenteel een SecurityError vanuit de constructor van Worker en SharedWorker. De specificatie vereist dat CSP wordt gecontroleerd als onderdeel van fetch en dat foutgebeurtenissen asynchroon worden afgehandeld in plaats van een uitzondering te genereren wanneer een script new Worker(url) of new SharedWorker(url) uitvoert. Deze wijziging zorgt ervoor dat Chrome voldoet aan de specificatie: er wordt geen uitzondering gegenereerd tijdens de constructor en foutgebeurtenissen worden asynchroon afgehandeld.
Audioniveau voor RTC-gecodeerde frames
Hiermee wordt het audioniveau van een gecodeerd frame dat via RTCPeerConnection wordt verzonden en via WebRTC Encoded Transform beschikbaar wordt gesteld, aan het web getoond.
Nieuwe oorsprongsproeven
In Chrome 139 kun je je aanmelden voor de volgende nieuwe Origin-proefversies .
Prompt API
De Prompt API is ontworpen voor interactie met een AI-taalmodel met behulp van tekst-, beeld- en audio-input. Het ondersteunt diverse gebruiksscenario's, van het genereren van afbeeldingsbijschriften en het uitvoeren van visuele zoekopdrachten tot het transcriberen van audio, het classificeren van geluidsgebeurtenissen, het genereren van tekst volgens specifieke instructies en het extraheren van informatie of inzichten uit tekst. Het ondersteunt gestructureerde outputs die ervoor zorgen dat reacties voldoen aan een vooraf gedefinieerd formaat, meestal uitgedrukt als een JSON-schema, om de conformiteit van reacties te verbeteren en een naadloze integratie met downstream-applicaties die gestandaardiseerde outputformaten vereisen te vergemakkelijken. Deze API is ook beschikbaar in Chrome-extensies. Deze origin trial is bedoeld voor publicatie op het web.
Volledige framesnelheid renderblokkeringsattribuut
We stellen voor om een nieuw renderblokkeringstoken, full-frame-rate, toe te voegen aan de blokkeringsattributen. Wanneer de renderer geblokkeerd is met het full-frame-rate token, zal de renderer op een lagere framesnelheid werken om meer resources te reserveren voor het laden.
WebGPU-compatibiliteitsmodus
Voegt een optionele, licht beperkte subset van de WebGPU API toe die oudere grafische API's zoals OpenGL en Direct3D11 kan uitvoeren. Door deze modus te activeren en de bijbehorende beperkingen te respecteren, kunnen ontwikkelaars het bereik van hun WebGPU-applicaties uitbreiden naar veel oudere apparaten die niet beschikken over de moderne, expliciete grafische API's die de kern van WebGPU vereist. Voor eenvoudige applicaties is de enige vereiste wijziging het specificeren van het featureLevel "compatibility" bij het aanroepen requestAdapter . Voor meer geavanceerde applicaties kunnen enkele aanpassingen nodig zijn om aan de beperkingen van de modus te voldoen. Omdat de Compatibility-modus een subset is, zijn de resulterende applicaties ook geldige WebGPU Core-applicaties en werken ze zelfs op user agents die de Compatibility-modus niet ondersteunen.
Afschrijvingen en verwijderingen
Deze versie van Chrome introduceert de onderstaande afschrijvingen en verwijderingen. Ga naar ChromeStatus.com voor lijsten met geplande afschrijvingen, huidige afschrijvingen en eerdere verwijderingen.
In deze versie van Chrome zijn twee functies verwijderd.
Stop de ondersteuning voor macOS 11.
Chrome 138 is de laatste versie die macOS 11 ondersteunt. Vanaf Chrome 139 wordt macOS 11 niet meer ondersteund, omdat Apple de ondersteuningsperiode hiervoor heeft afgesloten. Het is essentieel om een ondersteund besturingssysteem te gebruiken om de beveiliging te waarborgen. Op Macs met macOS 11 blijft Chrome wel werken en toont een waarschuwingsbalk, maar er zullen geen verdere updates meer worden uitgevoerd. Om Chrome te updaten, moet de computer worden bijgewerkt naar een ondersteunde versie van macOS. Voor nieuwe installaties van Chrome 139 en hoger is macOS 12 of hoger vereist.
Schakel de automatische detectie van de ISO-2022-JP-tekenset in HTML uit.
Er bestaan bekende beveiligingsproblemen met de automatische detectie van de tekenset ISO-2022-JP. Aangezien deze tekenset weinig wordt gebruikt en Safari geen ondersteuning biedt voor automatische detectie van ISO-2022-JP, heeft Chrome de ondersteuning hiervoor verwijderd om de beveiligingsproblemen te verhelpen.