Dit is wat u moet weten:
- Je kunt bij lange taken opgeven om je prestaties te verbeteren.
- Animeer elementen met intrinsieke formaten .
- Er zijn enkele wijzigingen in de syntaxis van de ankerpositionering .
- En er is nog veel meer .
Ik ben Pete LePage. Laten we eens kijken wat er nieuw is voor ontwikkelaars in Chrome 129.
Splits lange taken op met scheduler.yield()
Lange taken vertragen de reactie van de browser op gebruikersinvoer, waardoor de indruk ontstaat dat een site traag is en kritieke prestatiegegevens zoals INP worden beïnvloed. Met scheduler.yield()
kunt u lange taken opsplitsen in kleinere delen, waardoor de responsiviteit wordt verbeterd door expliciet terug te geven aan de hoofdthread.
Hiermee kunt u de browser vertellen:
"HEI! Het werk dat ik ga doen, kan even duren. Als je een frame moet schilderen, moet reageren op gebruikersinvoer of andere belangrijke taken hebt, is dat oké, ik kan wachten."
Voeg de volgende regel regelmatig toe aan uw JavaScript-code om de browser wat ademruimte te geven en INP- problemen te voorkomen.
await scheduler.yield();
Belangrijk is dat het de voortgang van je code prioriteit geeft, zodat je niet verliest door yielding. We raden aan om scheduler.yield()
ruim te gebruiken in functies tussen grotere werkstukken.
Zie Lange taken optimaliseren voor meer informatie.
Animaties met intrinsieke formaten
CSS-animaties zijn erg mooi, maar vereisen doorgaans expliciete afmetingen. Je kunt geen intrinsieke sleutelwoorden voor de afmeting gebruiken, zoals auto
, min-content
of fit-content
.
De CSS-eigenschap interpolate-size
opent een nieuwe reeks animaties die niet mogelijk waren met behulp van intrinsieke grootte-trefwoorden.
Zonder interpolate-size
hebben de knoppen in de volgende video geen overgang.
Nadat u interpolate-size: allow-keywords
hebt toegevoegd, krijgen de knoppen in de video een prachtig overgangsanimatie-effect.
Door interpolate-size: allow-keywords
op het root
element te specificeren, wordt het nieuwe gedrag voor de hele pagina ingesteld. We raden aan dit te doen wanneer compatibiliteit geen probleem is.
:root {
interpolate-size: allow-keywords;
}
.item {
height: auto;
@starting-style {
height: 0;
}
}
Voor een nauwkeurigere controle ondersteunt de CSS-functie calc-size()
, net als calc()
, ook bewerkingen op precies één van de ondersteunde intrinsieke sleutelwoorden voor formaataanpassing. Bij het uitvoeren van lay-outberekeningen wordt het sleutelwoord size
geëvalueerd naar de oorspronkelijke grootte van calc-size-basis
.
nav a {
width: 80px;
overflow-x: clip;
transition: width 0.35s ease;
&:hover {
width: calc-size(auto, size);
}
}
Bekijk Animate to height: auto; (en andere intrinsieke sleutelwoorden voor formaataanpassing) in CSS voor volledige details.
Wijzigingen in de CSS-ankerpositie
CSS-ankerpositionering is beschikbaar in Chrome 125, maar na wat extra discussie binnen de CSS-werkgroep zijn er een paar wijzigingen in de specificatie en implementatie. Als je CSS-ankerpositionering al gebruikt, moet je je code zo snel mogelijk bijwerken.
Ten eerste is inset-area
hernoemd naar position-area
. Dit was de voorkeur omdat de formulering position-
helpt te onthouden dat deze eigenschap wordt toegepast op het gepositioneerde element, niet op het ankerelement.
Ten tweede is position-try-options
hernoemd naar position-try-fallbacks
. Dit helpt je te onthouden dat dit slechts fallbacks zijn naar de primaire positie, die bepaald wordt door de basisstijlen.
Ten slotte wordt de functionele syntaxis inset-area()
verwijderd uit position-try
. Gebruik daarom position-try-fallbacks: top
in plaats van position-try-fallbacks: inset-area(top)
.
En nog veel meer!
Er is natuurlijk nog veel meer.
Er is een nieuwe Intl
methode voor het opmaken van tijdsduur, met ondersteuning voor meerdere landinstellingen.
const l = "fr-FR";
const d = {hours: 1, minutes: 46, seconds: 40};
const opts = {style: "long"};
new Intl.DurationFormat(l, opts).format(d);
// "1 heure, 46 minutes et 40 secondes"
Web GPU Canvas kan nu het volledige schermbereik gebruiken voor HDR-afbeeldingen.
Er zijn een aantal verouderingen en verwijderingen die gevolgen kunnen hebben voor sommige ontwikkelaars.
Lees de volledige release-opmerkingen .
Verder lezen
Dit zijn slechts enkele belangrijke hoogtepunten. Bekijk de volgende links voor aanvullende wijzigingen in Chrome 129.
- Wat is er nieuw in Chrome DevTools (129)
- ChromeStatus.com-updates voor Chrome 129
- Wijzigingslijst voor Chromium-bronrepository
- Chrome-releasekalender
Abonneren
Om op de hoogte te blijven, kunt u zich abonneren op het YouTube-kanaal voor Chrome-ontwikkelaars . U ontvangt dan een e-mailmelding wanneer we een nieuwe video lanceren.
Ik ben Pete LePage, de vervanger van Adriana, en zodra Chrome 130 uitkomt, vertellen we je graag wat er nieuw is in Chrome!