Chroom 140

Stabiele releasedatum: 2 september 2025

Tenzij anders vermeld, zijn de volgende wijzigingen van toepassing op de stabiele kanaalrelease van Chrome 140 voor Android, ChromeOS, Linux, macOS en Windows.

CSS

CSS getypte rekenkunde

Met getypte rekenkunde kun je expressies in CSS schrijven, zoals calc(10em / 1px) of calc(20% / 0.5em * 1px) . Dit is bijvoorbeeld handig in typografie, omdat je hiermee een getypte waarde kunt omzetten naar een ongetypte waarde en deze kunt hergebruiken voor eigenschappen die getallen accepteren. Een andere toepassing is het vermenigvuldigen van de eenheidsloze waarde met een ander type. Je kunt nu bijvoorbeeld van pixels naar graden omrekenen.

Tracking bug #40768696 | ChromeStatus.com-item | Spec

CSS caret-animation eigenschap

Chromium ondersteunt animatie van de eigenschap caret-color . Wanneer de eigenschap echter geanimeerd is, verstoort het standaard knipperende gedrag van de caret de animatie.

De CSS-eigenschap caret-animation heeft twee mogelijke waarden: auto en manual . auto staat voor browserstandaard (knipperend) en manual betekent dat de ontwikkelaar de cursoranimatie beheert. Gebruikers die last hebben van knipperende of flitsende beelden, kunnen het knipperen bovendien uitschakelen met een gebruikersstijlblad.

Tracking bug #329301988 | ChromeStatus.com-item | Spec

highlightsFromPoint API

Met de highlightsFromPoint API kunnen ontwikkelaars werken met aangepaste markeringen. De API detecteert welke markeringen zich op een specifiek punt in een document bevinden. Deze interactiviteit is waardevol voor complexe webfuncties waarbij meerdere markeringen elkaar kunnen overlappen of zich binnen een schaduw-DOM kunnen bevinden. Door nauwkeurige puntgebaseerde markeringsdetectie te bieden, stelt de API ontwikkelaars in staat om dynamische interacties met aangepaste markeringen effectiever te beheren. Ontwikkelaars kunnen bijvoorbeeld reageren op klikken van gebruikers of hover-gebeurtenissen op gemarkeerde gebieden om aangepaste tooltips, contextmenu's of andere interactieve functies te activeren.

Tracking bug #365046212 | ChromeStatus.com-item | Spec

ScrollIntoView -containeroptie

Met de containeroptie ScrollIntoViewOptions kunnen ontwikkelaars een scrollIntoView bewerking uitvoeren die alleen de dichtstbijzijnde bovenliggende scrollcontainer scrolt. Het volgende fragment scrolt bijvoorbeeld alleen de scrollcontainer van target om target in beeld te brengen, maar scrolt niet alle scrollcontainers naar de viewport:

target.scrollIntoView({container: 'nearest'});

ChromeStatus.com-vermelding | Spec

Weergaveovergangen: meer animatie-eigenschappen overnemen

Voegt meer animatie-eigenschappen toe die via de pseudoboom van de weergaveovergang worden overgenomen:

  • animation-timing-function
  • animation-iteration-count
  • animation-direction
  • animation-play-state

Tracking bug #427741151 | ChromeStatus.com-item | Spec

Weergave-overgangspseudo's erven animation-delay.

Naast de vorige update wordt de eigenschap animation-delay nu overgeërfd via de pseudoboom van de weergaveovergang.

ChromeStatus.com-vermelding | Spec

Geneste weergave-overgangsgroepen

Met deze functie kunnen weergaveovergangen een geneste pseudo-elementboom genereren in plaats van een platte. Hierdoor lijkt de weergaveovergang meer in lijn met de oorspronkelijke elementen en visuele intentie. Het maakt clipping, geneste 3D-transformaties en de juiste toepassing van effecten zoals dekking, maskering en filters mogelijk.

Tracking bug #399431227 | ChromeStatus.com-item | Spec

overscroll-behavior van viewport propageren vanuit root

Deze wijziging zorgt ervoor dat overscroll-behavior vanuit de root wordt verspreid in plaats van vanuit de body.

De CSS-werkgroep heeft besloten om eigenschappen van de <body> niet door te geven aan de viewport. In plaats daarvan worden eigenschappen van de viewport doorgegeven vanuit het rootelement ( <html> ). overscroll-behavior zou dus moeten worden doorgegeven vanuit het rootelement. Chrome kampt echter al lang met een probleem: overscroll-behavior wordt doorgegeven vanuit de <body> in plaats van vanuit de root. Dit gedrag is niet compatibel met andere browsers. Deze wijziging zorgt ervoor dat Chrome voldoet aan de specificatie en compatibel wordt met andere implementaties.

Tracking bug #41453796 | ChromeStatus.com-vermelding | Spec

CSS counter() en counters() in alternatieve tekst van content

Deze functie voegt de mogelijkheid toe om counter() en counters() te gebruiken in de alt-tekst van de content eigenschap. Dit biedt meer betekenisvolle informatie om de toegankelijkheid te verbeteren.

Tracking bug #417488055 | ChromeStatus.com-vermelding | Spec

CSS scroll-target-group eigenschap

De eigenschap scroll-target-group geeft aan of het element een scrollmarkeringsgroepcontainer is. Deze accepteert een van de volgende waarden:

  • 'none': Het element maakt geen scrollmarkeringsgroepcontainer aan.
  • 'auto': Het element stelt een scroll-markeringsgroepcontainer in die een scroll-markeringsgroep vormt die alle scroll-markeringselementen bevat waarvoor dit de dichtstbijzijnde voorouder-scroll-markeringsgroepcontainer is.

Door een scroll-markergroepcontainer in te stellen, kunnen alle HTML-ankerelementen met een fragment-ID die zich in zo'n container bevinden, het HTML-equivalent zijn van ::scroll-marker pseudo-elementen. Het ankerelement waarvan het scrolldoel momenteel zichtbaar is, kan worden gestyled met de pseudo-klasse :target-current .

Tracking bug #6607668 | ChromeStatus.com-item | Spec

Ondersteuning voor de descriptor voor font-variation-settings in @font-face regel

Met CSS kunnen ontwikkelaars de dikte, breedte, schuinte en andere assen van een lettertype aanpassen met behulp van de eigenschap font-variation-settings op individuele elementen. Chromium-gebaseerde browsers bieden echter geen ondersteuning voor deze eigenschap in @font-face -declaraties. Deze functie ondersteunt de op strings gebaseerde syntaxis voor font-variation-settings zoals gedefinieerd in CSS Fonts Level 4. Ongeldige of niet-herkende feature tags worden per specificatie genegeerd. Binaire of niet-standaard vormen worden niet ondersteund. Variabele lettertypen worden steeds breder gebruikt voor zowel prestaties als typografische flexibiliteit. Ondersteuning voor deze descriptor in Chromium verbetert de controle, vermindert herhaling en ondersteunt een schaalbare, moderne benadering van webtypografie.

Tracking bug #40398871 | ChromeStatus.com-vermelding | Spec

DOM

ToggleEvent -bronkenmerk

Het source van een ToggleEvent bevat het element dat de ToggleEvent heeft geactiveerd, indien van toepassing. Als een gebruiker bijvoorbeeld op een <button> -element klikt met het popovertarget of commandfor kenmerk om een ​​popover te openen, wordt het bronkenmerk van de ToggleEvent die op de popover wordt geactiveerd, ingesteld op de aanroepende <button> .

ChromeStatus.com-vermelding | Spec

Geïsoleerde web-apps (IWA's)

Controlled Frame API (alleen beschikbaar voor IWA's)

Deze functie voegt een Controlled Frame API toe die alleen beschikbaar is voor geïsoleerde webapps (IWA's). Net als API's met vergelijkbare namen op andere platforms, maakt Controlled Frame het mogelijk om alle content in te sluiten, zelfs content van derden die niet in <iframe> kan worden ingesloten. Controlled Frame maakt het ook mogelijk om ingesloten content te beheren met een verzameling API-methoden en -gebeurtenissen. Zie de uitleg over geïsoleerde webapps voor meer informatie over geïsoleerde webapps .

Tracking bug #40191772 | ChromeStatus.com-item | Spec

JavaScript

Uint8Array van en naar base64 en hex

Base64 is een veelgebruikte manier om willekeurige binaire gegevens als ASCII weer te geven. JavaScript heeft Uint8Arrays voor binaire gegevens. Het mist echter een ingebouwd mechanisme om die gegevens als base64 te coderen, of om base64-gegevens te gebruiken en een bijbehorende Uint8Array te genereren. Deze functie biedt de mogelijkheid en methoden om te converteren tussen hexadecimale strings en Uint8Arrays .

ChromeStatus.com-vermelding | Spec

Bekijk overgang voltooid belofte timing verandering

De huidige timing voor de voltooide promise vindt plaats binnen de levenscyclusstappen van de rendering. Dit betekent dat code die wordt uitgevoerd als gevolg van de promise-resolutie, wordt uitgevoerd nadat het visuele frame dat de weergaveovergang verwijdert, is geproduceerd. Dit kan een flikkering aan het einde van de animatie veroorzaken als het script stijlen verplaatst om een ​​visueel vergelijkbare status te behouden. Deze wijziging lost het probleem op door de opschoonstappen voor de weergaveovergang asynchroon uit te voeren nadat de levenscyclus is voltooid.

Tracking bug #430018991 | ChromeStatus.com-vermelding

Web-API's

ReadableStreamBYOBReader min optie

Deze functie introduceert een min optie in de bestaande methode ReadableStreamBYOBReader.read(view) . De methode accepteert al een ArrayBufferView waarin gegevens worden gelezen, maar garandeert momenteel niet hoeveel elementen er worden geschreven voordat de leesbewerking wordt verwerkt. Door een min op te geven, kunt u vereisen dat de stream wacht tot er ten minste zoveel elementen beschikbaar zijn voordat de leesbewerking wordt verwerkt. Dit is een verbetering ten opzichte van het huidige gedrag, waarbij leesbewerkingen mogelijk worden verwerkt met minder elementen dan de weergave kan bevatten.

Tracking bug #40942083 | ChromeStatus.com-item | Spec

De Get Installed Related Apps API (navigator.getInstalledRelatedApps) biedt sites toegang tot de app als de bijbehorende gerelateerde applicaties zijn geïnstalleerd. Sites mogen deze API alleen gebruiken als de applicatie een vastgestelde koppeling heeft met de webbron.

De API werd gelanceerd in Chrome 80 voor Android. Extra ondersteuning voor webapps op desktop werd ingeschakeld in Chrome 140.

Documentatie | Tracking bug #895854 | ChromeStatus.com-item | Specificaties

In sommige gevallen is het belangrijk om aan de serverzijde onderscheid te maken tussen cookies die door de server worden geplaatst en die door de client. Een voorbeeld hiervan zijn cookies die normaal gesproken altijd door de server worden geplaatst. Onverwachte code (zoals een XSS-exploit, een schadelijke extensie of een commit van een verwarde ontwikkelaar) kan deze echter op de client plaatsen. Dit voorstel voegt een signaal toe waarmee servers dit onderscheid kunnen maken. Meer specifiek definieert het de prefixen __Http en __HostHttp , die ervoor zorgen dat er aan de clientzijde geen cookie wordt geplaatst met behulp van een script.

Tracking bug #426096760 | ChromeStatus.com-item | Spec

Servicemedewerker

SharedWorker -script erft controller voor blob-script-URL

De specificatie stelt dat workers controllers voor de blob-URL moeten overnemen. Bestaande code staat echter alleen toegewezen workers toe de controller over te nemen; gedeelde workers niet. Hiermee wordt het gedrag van Chrome aangepast aan de specificatie. Het bedrijfsbeleid SharedWorkerBlobURLFixEnabled beheert deze functie.

Tracking bug #324939068 | ChromeStatus.com-item | Spec

ServiceWorkerStaticRouterTimingInfo toevoegen

Deze functie voegt timinginformatie toe voor de statische routing-API van ServiceWorker, die beschikbaar is in de timing-API voor navigatie en de timing-API voor resources voor gebruik door ontwikkelaars. ServiceWorker biedt timinginformatie om bepaalde punten in de tijd te markeren.

Deze functie voegt twee stukjes statische routing-API-relevante timinginformatie toe:

  • RouterEvaluationStart : Tijd om een ​​aanvraag te matchen met geregistreerde routerregels.
  • CacheLookupStart : Tijd om de cacheopslag op te zoeken als de bron "cache" is.

Bovendien voegt deze functie twee stukjes routerbroninformatie toe: de overeenkomende routerbron en de uiteindelijke routerbron.

Tracking bug #41496865 | ChromeStatus.com-vermelding | Spec

Oorsprongsproeven

Meldingen voor inkomende oproepen inschakelen

Deze functie breidt de Notifications API uit, zodat geïnstalleerde PWA's meldingen kunnen versturen voor inkomende oproepen – meldingen met knoppen in de stijl van oproepen en een beltoon. Deze extensie helpt VoIP-webapps om aantrekkelijkere ervaringen te creëren door het voor gebruikers gemakkelijker te maken om oproepmeldingen te herkennen en te beantwoorden. Bovendien helpt deze functie de kloof te overbruggen tussen native en webimplementaties van apps die beide hebben.

Origin Trial | Bug volgen #detail?id=1383570 | ChromeStatus.com-item | Spec

API voor crashrapportage van sleutelwaarden

Met deze functie wordt een nieuwe sleutel-waarde-API geïntroduceerd, voorlopig window.crashReport , ondersteund door een per-document-kaart met gegevens die zijn toegevoegd aan crashrapporten.

De gegevens in de backing map van deze API worden naar de CrashReportBody verzonden als er een renderproces op de site crasht. Dit stelt ontwikkelaars in staat om te debuggen welke specifieke status in hun applicatie een bepaalde crash zou kunnen veroorzaken.

Origin Trial | Tracking bug #400432195 | ChromeStatus.com-vermelding | Spec

Voeg de clipboardchange -gebeurtenis toe

De gebeurtenis clipboardchange wordt geactiveerd wanneer een webapp of een andere systeemtoepassing de inhoud van het systeemklembord wijzigt. Hierdoor kunnen webapps zoals externe desktopclients hun klemborden gesynchroniseerd houden met het systeemklembord. Het biedt een efficiënt alternatief voor het controleren van wijzigingen in het klembord met JavaScript.

Origin Trial | Tracking bug #41442253 | ChromeStatus.com-vermelding | Spec

SharedWorker inschakelen op Android

De langdurige vraag naar SharedWorker-ondersteuning op Android komt voort uit verschillende behoeften van webontwikkelaars:

  • Delen van bronnen en efficiëntie : ontwikkelaars streven ernaar om één WebSocket of Server-Sent Events (SSE)-verbinding te delen over meerdere tabbladen en zo bronnen te besparen.
  • Blijvend resourcebeheer : een vereiste om resources op verschillende tabbladen te delen en te behouden, met name voor technologieën zoals WASM-gebaseerde SQLite.
  • Een gebrek aan functionaliteit dichten : Andere grote mobiele browsers, waaronder Safari op iOS en Firefox op Android, ondersteunen SharedWorker al. Chrome op Android is daarmee de laatste grote browser die dit gebrek oplost.

Origin Trial | ChromeStatus.com-invoer | Spec

Verhuizingen

Stop met verzenden Purpose: prefetch header van prefetches en prerenders

Prefetches en prerenders gebruiken nu de Sec-Purpose -header. Daarom wordt de oude Purpose: prefetch header verwijderd.

Dit zal worden beperkt tot speculatieregels prefetch , speculatieregels prerender , <link rel=prefetch> en Chromium's niet-standaard <link rel=prerender> .

Tracking bug #420724819 | ChromeStatus.com-item | Spec

Speciale regels voor lettergrootte voor H1 in sommige elementen afschaffen

De HTML-specificatie bevat een lijst met speciale regels voor <h1> -tags die zijn genest in <article> , <aside> -, <nav> - of <section> -tags:

Deze speciale regels zijn verouderd omdat ze toegankelijkheidsproblemen veroorzaken. Ze verkleinen namelijk visueel de lettergrootte van geneste <h1> -elementen, zodat ze eruit zien als <h2> -elementen, maar niets in de toegankelijkheidsboom weerspiegelt deze degradatie.

Tracking bug #394111284 | ChromeStatus.com-item | Spec