Gepubliceerd: 3 december 2025
Tenzij anders vermeld, zijn de volgende wijzigingen van toepassing op de nieuwste versie van het Chrome-bètakanaal voor Android, ChromeOS, Linux, macOS en Windows. Zie de meegeleverde links of de lijst op ChromeStatus.com voor meer informatie over deze functies. Download de nieuwste versie van Google.com voor desktop of van de Google Play Store voor Android.
CSS en UI
CSS-ankerpositionering met transformaties
Als een element met een ankerpositie is gekoppeld aan een anker met een transformatie (of zich bevindt binnen een element met een transformatie), lost de browser de functies anchor() en anchor-size() op ten opzichte van de begrenzingsbox van het getransformeerde anker.
CSS-zoekfunctie voor het markeren van pseudo's
Hiermee wordt de styling van zoekresultaten op de pagina weergegeven als het pseudo-element ::search-text , een highlight-pseudo-element vergelijkbaar met die voor selectie- en spellingsfouten. Dit stelt je in staat om de voorgrond- en achtergrondkleuren te wijzigen of tekstdecoraties toe te voegen. Dit is vooral handig als de standaardinstellingen van de browser onvoldoende contrast hebben met de paginakleuren of anderszins ongeschikt zijn.
Lees meer op de Igalia-blog in het artikel 'Find-in-Page Highlight Styling' .
Gebruik aria-details niet voor de positionering van ankers.
De code om aria-details -relaties te creëren voor niet-popover-gebruikssituaties van ankerpositionering was waarschijnlijk een fout. Aangezien popovers en andere semantische relaties wel aria-details creëren, en de overige gebruikssituaties waarschijnlijk niet-semantisch zijn, creëert Chrome deze relaties nu niet meer in de niet-semantische gevallen.
@scroll-state scrollondersteuning
Hiermee kunt u de afstammelingen van containers stylen op basis van de meest recente scrollrichting.
Voorbeeld:
.scrolling-up {
translate: 80px 0;
transition: 0.4s translate;
}
html {
container-type: scroll-state;
}
@container scroll-state(scrolled: top) {
.scrolling-up { translate: 0 0; }
}
Houd rekening met overscroll-behavior voor toetsenbordscrolls.
Als je overscroll-behavior instelt op een andere waarde dan auto , mag de browser geen scroll chaining uitvoeren. Chrome respecteert dit voor scrollen met de muis of aanraakbediening; bij scrollen met het toetsenbord werd dit echter genegeerd. Deze wijziging zorgt ervoor dat ook bij scrollen met het toetsenbord rekening wordt gehouden met overscroll-behavior .
Respecteer overscroll-behavior bij niet-scrollbare scrollcontainers.
De eigenschap overscroll-behavior is van toepassing op alle elementen van een scrollcontainer, ongeacht of deze elementen overlopende inhoud hebben of door de gebruiker kunnen worden gescrollt. Je kunt overscroll-behavior gebruiken om scrollpropagatie te voorkomen op een overflow: hidden achtergrond of een ` overflow: auto element, zonder te hoeven controleren of het element daadwerkelijk overloopt.
Niet-boomstructuur-gebaseerde overeenkomst container-name
De browser negeert de tree-scope bij het matchen container-name voor @container -query's.
Voorheen werd bij het matchen container-name voor @container -query's gebruikgemaakt van boomstructuurnamen of -referenties. Dit betekende dat dezelfde naam niet overeenkwam als de @container regel en de eigenschap container-type afkomstig waren uit verschillende boomstructuren, bijvoorbeeld als de declaratie van het container-type afkomstig was uit een interne schaduwboom.
Door deze wijziging komen de waarden container-name overeen, ongeacht de oorsprong van de @container regel of de declaratie container-type .
SVG2 CSS-cascading
Stemt de Chrome-implementatie af op de SVG2-specificatie voor het matchen van CSS-regels in <use> -elementstructuren.
Selectoren matchen met de <use> -instantie-elementen in plaats van met de oorspronkelijke elementen-substructuur. Dit betekent dat selectoren niet langer overeenkomen met voorouder- en broerelementen buiten de gekloonde substructuur. Belangrijker nog, state-selectoren zoals :hover matchen nu binnen <use> -instanties.
Web-API's
XRVisibilityMaskChange
Voegt een XRVisibilityMaskChange gebeurtenis toe die een lijst met hoekpunten en indexen levert om het mesh van het zichtbare gedeelte van de viewport van de gebruiker weer te geven. Deze gegevens kunnen worden gebruikt om de hoeveelheid van de viewport die wordt weergegeven nauwkeurig te beperken, wat de prestaties verbetert. Om deze gebeurtenis beter te ondersteunen, krijgen XRView objecten ook unieke identificaties om ze gemakkelijker te kunnen koppelen aan de bijbehorende maskers. Dit is een uitbreiding op de kernspecificatie van WebXR.
Stel onanimationcancel gebeurtenis beschikbaar aan GlobalEventHandlers
CSS Animations Level 1 breidt de GlobalEventHandlers interface, gedefinieerd in de HTML-specificatie, uit door vier nieuwe gebeurtenisafhandelaars te declareren: onanimationstart , onanimationiteration , onanimationend en onanimationcancel .
Alleen de eventhandler onanimationcancel ontbrak in de GlobalEventHandlers IDL.
Voor meer informatie, zie de CSS Animations Level 1-specificatie en het gedeelte GlobalEventHandlers in de HTML-specificatie .
Bekijk waitUntil() -methode van de overgangsweergave
De ViewTransition construeert automatisch een pseudo-elementenboom om de deelnemende elementen in de overgang weer te geven en te animeren. Volgens de specificatie wordt deze subboom geconstrueerd wanneer de weergaveovergang begint te animeren en wordt deze vernietigd wanneer de animaties die aan alle pseudo-elementen van de weergaveovergang zijn gekoppeld, zijn voltooid (of preciezer gezegd, niet actief of gepauzeerd).
Dit werkt in de meeste gevallen en biedt ontwikkelaars een naadloze ervaring. Voor complexere gevallen is dit echter onvoldoende, omdat ontwikkelaars soms willen dat de pseudo-structuur van de weergaveovergang blijft bestaan nadat de animatie is voltooid.
Een voorbeeld hiervan is het koppelen van weergaveovergangen aan scrollgestuurde animaties. Wanneer de animatie wordt aangestuurd door een scrolltijdlijn, mag de subboom niet worden vernietigd wanneer de animaties zijn voltooid, omdat terugscrollen de pseudo-elementen nog steeds kan animeren.
Om geavanceerd gebruik van weergaveovergangen mogelijk te maken, voegt deze intent een waitUntil() functie toe aan het ViewTransition object die een promise als argument accepteert. Deze promise vertraagt de vernietiging van de pseudo-boom totdat deze is afgehandeld.
Het <geolocation> -element
Introduceert het <geolocation> -element, een declaratieve, door de gebruiker te activeren besturingselement voor toegang tot de locatie van de gebruiker. Het stroomlijnt het proces voor zowel gebruikers als ontwikkelaars door de toestemmingsprocedure af te handelen en locatiegegevens direct aan de website te verstrekken, waardoor een aparte JavaScript API-aanroep vaak overbodig wordt.
Dit lost het aloude probleem op van toestemmingsprompts die direct vanuit JavaScript worden geactiveerd zonder een duidelijke indicatie van de intentie van de gebruiker. Door een door de browser beheerd element in de pagina in te sluiten, geeft de klik van de gebruiker een duidelijk, opzettelijk signaal. Dit zorgt voor een betere gebruikerservaring bij het geven van een toestemmingsprompt en, cruciaal, biedt een herstelmogelijkheid voor gebruikers die de toestemming eerder hebben geweigerd.
WebGPU: subgroup_id functie
De ingebouwde waarden subgroup_id en num_subgroups zijn beschikbaar wanneer de subgroups-extensie is ingeschakeld.
WebGPU: Uniforme buffer-standaardindeling
Uniform buffers die in WGSL-shaders zijn gedeclareerd, hoeven niet langer een uitlijning van 16 bytes te hebben op array-elementen of om offsets van geneste structuren op te vullen tot een veelvoud van 16 bytes.
De Temporal API
De Temporal API in ECMA262 biedt standaardobjecten en -functies voor het werken met datums en tijden. Date is al lange tijd een probleem in ECMAScript. Temporal , een globaal Object dat fungeert als een naamruimte op het hoogste niveau (bijvoorbeeld Math ), brengt een moderne datum- en tijd-API naar de ECMAScript-taal. Voor een gedetailleerde uitleg van de achterliggende motivatie, zie Fixing JavaScript Date: Getting Started .
Ondersteuning voor ping , hreflang , type en referrerPolicy voor SVGAElement
Voegt ondersteuning toe voor de attributen ping , hreflang , type en referrerPolicy op SVGAElement , waardoor het gedrag ervan wordt afgestemd op HTMLAnchorElement voor consistente linkverwerking in zowel HTML als SVG.
De clipboardchange gebeurtenis
De gebeurtenis clipboardchange wordt geactiveerd wanneer de inhoud van het systeemklembord wordt gewijzigd door een webapplicatie of een andere systeemtoepassing. Hierdoor kunnen webapplicaties, zoals bijvoorbeeld externe bureaubladclients, hun klembord gesynchroniseerd houden met het systeemklembord. Het biedt een efficiënt alternatief voor het continu controleren van het klembord (met behulp van JavaScript) op wijzigingen.
Gebruikersagent Client Hints ch-ua-high-entropy-values machtigingsbeleid
Voegt ondersteuning toe voor een ch-ua-high-entropy-values -machtigingsbeleid waarmee een site op het hoogste niveau kan beperken welke documenten clienthints met hoge entropie kunnen verzamelen met behulp van de JavaScript API navigator.userAgentData.getHighEntropyValues() .
Het beperken van het verzamelen van hints met een hoge entropie via HTTP is al mogelijk met bestaande per-client-hint-toestemmingsbeleidsregels.
Spiegeling van RTL MathML-operatoren
Voegt ondersteuning toe voor spiegeling op teken- en glyphniveau bij het weergeven van MathML-operatoren in RTL-modus.
Bij gebruik van de RTL-modus kunnen sommige operatoren worden gespiegeld door ze naar een ander codepunt te wijzigen (bijvoorbeeld een rechterhaakje wordt een linkerhaakje). Dit is spiegeling op tekenniveau, waarbij de equivalenties worden gedefinieerd door de Unicode-eigenschap Bidi_Mirrored .
Sommige operatoren hebben geen geschikt spiegelteken. In dat geval is spiegeling op glyph-niveau van toepassing, met de rtlm lettertypefunctie, waarbij een andere glyph de oorspronkelijke glyph in een gespiegelde context kan vervangen. Sommige bestaande implementaties spiegelen de oorspronkelijke glyph direct, maar dit kan de betekenis veranderen voor asymmetrische tekens, zoals de contourintegraal met de klok mee.
Multicast-ondersteuning voor de Direct Sockets API voor geïsoleerde webapplicaties
Met deze functie kunnen geïsoleerde webapps zich abonneren op multicastgroepen, UDP-pakketten van deze groepen ontvangen en extra parameters specificeren bij het verzenden van UDP-pakketten naar multicastadressen.
Prestaties en timing van evenementen: InteractionCount
De Event Timing API maakt deel uit van de Performance Timeline en meet de prestaties van gebruikersinteracties. Aan bepaalde gebeurtenissen wordt een interactionId waarde toegekend, wat handig is voor het groeperen van gerelateerde interacties op basis van veelvoorkomende fysieke gebruikersinvoer of gebaren.
Deze functie voegt performance.interactionCount toe, wat het totale aantal interacties is dat op de pagina heeft plaatsgevonden.
Deze functie is met name handig voor het berekenen van de INP-waarde (Interaction to Next Paint), waarvoor het totale aantal interacties nodig is om een hoge percentielscore te berekenen (p98 voor pagina's met meer dan 50 interacties in totaal).
Deze functie is al lange tijd gespecificeerd, is eerder als prototype in Chromium ontwikkeld maar nooit uitgebracht, maakt deel uit van Interop 2025 en is al beschikbaar in andere browsers.
Interoperabele aanwijzer- en muisgrensgebeurtenissen na DOM-wijzigingen
Nadat een gebeurtenisdoel uit de DOM is verwijderd, moet het logische doel van de aanwijzer, zoals geïmpliceerd door de Pointer- en Mouse-boundary-gebeurtenissen (dat wil zeggen de gebeurtenissen over , out , enter en leave ), de dichtstbijzijnde voorouder zijn die nog steeds aan de DOM is gekoppeld.
Chrome bleef een knooppunt volgen, zelfs nadat het uit de DOM was verwijderd. Als gevolg hiervan, als de muiswijzer naar een nieuw knooppunt B bewoog nadat het testknooppunt A uit de DOM was verwijderd, impliceerde de reeks grensgebeurtenissen ( pointerover , pointerout , pointerenter , pointerleave en de bijbehorende muisgebeurtenissen) een beweging van de muiswijzer van A naar B. Volgens de nieuwe consensus impliceert de reeks gebeurtenissen een beweging van de muiswijzer van de "ouder van A" naar B.
Aanwijzervergrendeling op Android
Biedt toegang tot onbewerkte muisbewegingen door het doel van muisgebeurtenissen te vergrendelen op één enkel element en de muiscursor te verbergen. De Pointer Lock API wordt al ondersteund op desktops; deze release is bedoeld voor ondersteuning op Android.
RTCDegradationPreference enum-waarde maintain-framerate-and-resolution
De maintain-framerate-and-resolution schakelt de interne video-adaptatie van WebRTC uit. Hierdoor kan de applicatie zijn eigen adaptatielogica implementeren en wordt interferentie van de interne adaptatie voorkomen.
WebAuthn Signal API op Android en iOS
Sta WebAuthn-afhankelijke partijen toe om informatie over bestaande wachtwoorden terug te rapporteren aan aanbieders van referentieopslag, zodat onjuiste of ingetrokken referenties kunnen worden bijgewerkt of verwijderd uit de gebruikersinterface van de aanbieder en het systeem.
Deze functie was al beschikbaar op desktops en is nu ook beschikbaar voor Android en iOS.
Bovendien ondersteunt de signal API nu een beveiligingsmechanisme voor Google Password Manager-wachtwoorden op alle ondersteunde platforms. Voorheen werd het wachtwoord permanent verwijderd wanneer een vertrouwende partij aangaf dat een inloggegeven onbekend of verwijderd was. Nu verbergt Google Password Manager het wachtwoord in plaats van het te verwijderen. Wachtwoorden kunnen worden hersteld door signalAllAcceptedCredentials aan te roepen met een lijst van eerder verborgen wachtwoorden.
Nieuwe oorsprongsproeven
In Chrome 144 kun je je aanmelden voor de volgende Origin-proeven .
Verbeterde Canvas TextMetrics
Breidt de TextMetrics Canvas API uit met ondersteuning voor selectierechthoeken, bounding box-query's en op glyph-clusters gebaseerde bewerkingen.
Deze functionaliteit maakt complexe tekstbewerkingsapplicaties mogelijk met nauwkeurige selectie, cursorpositionering en hit-testen. Bovendien maakt clustergebaseerde rendering geavanceerde teksteffecten mogelijk, zoals onafhankelijke karakteranimaties en -stijlen.
Afschrijvingen en verwijderingen
Deze versie van Chrome introduceert de in dit gedeelte vermelde afschrijvingen en verwijderingen. Ga naar ChromeStatus.com voor lijsten met geplande afschrijvingen, huidige afschrijvingen en eerdere verwijderingen.
De Topics API afschaffen
De Topics API is een API waarmee advertenties kunnen worden gericht op basis van de algemene browse-interesses van een gebruiker, zonder dat de exacte browsegeschiedenis openbaar wordt gemaakt.
Na de aankondiging dat Chrome zijn huidige aanpak ten aanzien van cookies van derden zal handhaven, zullen we de Topics API (samen met bepaalde andere technologieën, zoals beschreven op de statuspagina van de Privacy Sandbox ) uitfaseren en verwijderen.
De Protected Audience API wordt afgeschaft.
De Protected Audience API biedt een methode voor het adverteren op specifieke doelgroepen zonder gebruik te maken van cookies van derden of het volgen van gebruikers op verschillende websites.
Na de aankondiging dat Chrome zijn huidige aanpak ten aanzien van cookies van derden zal handhaven, zullen we de Protected Audience API (samen met bepaalde andere technologieën, zoals beschreven op de statuspagina van de Privacy Sandbox ) uitfaseren en verwijderen.
De Shared Storage API afschaffen
De Shared Storage API is een privacyvriendelijke web-API waarmee opslag mogelijk is die niet is gepartitioneerd op basis van de website van de eigenaar.
Na de aankondiging dat Chrome zijn huidige aanpak ten aanzien van cookies van derden zal handhaven, heeft het team besloten de Shared Storage API (samen met bepaalde andere technologieën, zoals beschreven op de statuspagina van de Privacy Sandbox ) uit te faseren en te verwijderen.
De Attribution Reporting API wordt buiten gebruik gesteld.
De Attribution Reporting API is een API die is ontworpen om advertentieconversies te meten zonder gebruik te maken van cookies van derden of gebruikersgedrag te volgen op verschillende websites.
Na de aankondiging dat Chrome zijn huidige aanpak ten aanzien van cookies van derden zal handhaven, is het team van plan de Attribution Reporting API (samen met andere Privacy Sandbox API's) uit te faseren en te verwijderen.
De Private Aggregation API wordt afgeschaft.
De Private Aggregation API is een generiek mechanisme voor het meten van geaggregeerde, website-overstijgende gegevens op een privacyvriendelijke manier. Het is oorspronkelijk ontworpen voor een toekomst zonder cookies van derden.
Na de aankondiging dat Chrome zijn huidige aanpak voor cookies van derden zal handhaven, heeft het team besloten de Private Aggregation API (samen met bepaalde andere technologieën, zoals beschreven op de statuspagina van de Privacy Sandbox ) uit te faseren en te verwijderen. Deze API is alleen beschikbaar via de Shared Storage en Protected Audience API's, die eveneens zullen worden uitgefaseerd en verwijderd. Daarom is er geen extra werk nodig voor Private Aggregation.
Gerelateerde websitesets afschaffen
Gerelateerde websitesets bieden ontwikkelaars een raamwerk om relaties tussen sites te definiëren, zodat beperkte toegang tot cookies tussen sites mogelijk is voor specifieke, gebruikersgerichte doeleinden. Dit wordt gefaciliteerd door het gebruik van de Storage Access API en document.requestStorageAccessFor (zie volgende sectie).
Na de aankondiging dat Chrome zijn huidige aanpak ten aanzien van cookies van derden zal handhaven, zullen we de functie 'Gerelateerde websitesets' (samen met bepaalde andere technologieën, zoals beschreven op de statuspagina van de Privacy Sandbox ) uitfaseren en verwijderen.
De functie document.requestStorageAccessFor wordt afgeschaft.
De requestStorageAccessFor API is een uitbreiding op de Storage Access API waarmee een site op het hoogste niveau toegang kan aanvragen tot niet-gepartitioneerde ("first-party") cookies namens ingebedde sites. Browsers kunnen naar eigen inzicht toegang verlenen of weigeren, waarbij mechanismen zoals het lidmaatschap van gerelateerde websitesets als mogelijk signaal kunnen dienen. Dit maakt het mogelijk voor sites op het hoogste niveau om de Storage Access API te gebruiken.
Na de aankondiging dat Chrome zijn huidige aanpak ten aanzien van cookies van derden zal handhaven, zullen we requestStorageAccessFor (samen met bepaalde andere technologieën, zoals beschreven op de statuspagina van de Privacy Sandbox ) uitfaseren en verwijderen.
Het gebruik savedTabGroups als afzonderlijke waarde in SyncTypesListDisabled wordt afgeschaft.
Met het bedrijfsbeleid SyncTypesListDisabled kunnen beheerders de synchronisatie van het gegevenstype savedTabGroups op desktopplatforms uitschakelen. Op mobiele platformen wordt de synchronisatie van tabgroepen echter al beheerd door het gegevenstype tabs . Om het gedrag op desktops af te stemmen op dat van mobiele apparaten en het synchronisatiebeheer te vereenvoudigen, is het afzonderlijke gegevenstype savedTabGroups afgeschaft en is het niet langer een afzonderlijk aanpasbare waarde binnen het beleid SyncTypesListDisabled .
Extern geladen entiteiten bij het parsen van XML
Chrome haalt synchroon externe XML-entiteiten of DTD's op en integreert deze onder specifieke omstandigheden in de parsing. Deze functionaliteit wordt verwijderd.
http/tests/security/contentTypeOptions/xml-external-entity.xml biedt een voorbeeld: Externe entiteiten kunnen worden gedefinieerd in het laatste deel van de DOCTYPE instructie en verwijzen naar bronnen die synchroon worden geladen en als context worden opgenomen bij het parsen van XML.
Een ander syntaxvoorbeeld is een DOCTYPE dat, met behulp van het trefwoord SYSTEM gevolgd door een URL die verwijst naar een DTD, aanvullende entiteitsdefinities bevat.
Dergelijke externe laadverzoeken worden door de parser doorgegeven.
Volgens de W3C XML-specificatie hoeven processors die geen validatie uitvoeren, geen externe entiteiten te lezen.
Het team is van plan om het laden van externe entiteitsdefinities in XML-documenten die geen XSLT gebruiken, af te schaffen.