CSS-täckning och oanvända format
Identifiera och ta bort oanvänd CSS med DevTools panel Coverage och verktyg för tree shaking, till exempel PurgeCSS.
CSS-täckning och oanvända format är en gratis lektion i CSS Academy på CoddyKit. Detta är lektion 4 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för CSS Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i CSS Academy innehåller totalt 4 lektioner.
Problemet med oanvänd CSS
Stora CSS-filer innehåller ofta formatmallar för komponenter som inte finns på den aktuella sidan. Varje oanvänd byte ökar tiden för parsning, skapande av CSSOM och överföring. En typisk produktionsapp kan ha 90 % eller mer oanvänd CSS på en given sida.
Chrome DevTools Coverage
Öppna DevTools → Coverage-panelen (Cmd+Shift+P → Coverage). Starta inspelningen, interagera med sidan och stoppa sedan inspelningen. Panelen visar varje CSS-fil med användningsprocent och markerar oanvända regler med rött. Exportera täckningsdata som JSON för analys.
PurgeCSS
PurgeCSS genomsöker HTML-, JS- och mallfiler efter klassnamn och tar bort oanvända CSS-regler. Konfigurera innehållsmönster som omfattar alla filer som kan referera till klassnamn. Lägg till klasser som används dynamiskt (och läggs till av JS) i safelistan för att förhindra att de tas bort av misstag.
Tailwind CSS JIT
Tailwinds JIT-kompilator genererar endast de utility-klasser som faktiskt används i mallarna. Den resulterande CSS-filen blir mycket liten — ofta 5–15 KB för en hel applikation — eftersom oanvända utilities aldrig genereras. Detta är det ideala resultatet av rensningen.
Konfigurera PurgeCSS
I en webpack- eller Vite-konfiguration lägger ni till PurgeCSS med innehållsmönster som omfattar alla mallfiler. Alternativet safelist accepterar strängar, reguljära uttryck och deep-safelist för komplexa dynamiska klassmönster från bibliotek som Headless UI.
Fördelar med CSS Modules
CSS Modules genererar unika klassnamn per fil och tree-shakar oanvända moduler när bundlern är konfigurerad för det. Endast importerade CSS-moduler inkluderas i paketet — när stilar och komponenter ligger tillsammans försvinner oanvända globala stilar naturligt.
Dela upp CSS per route
Dela upp CSS per route i ramverk som Next.js (extrahering av CSS per sida) eller använd dynamiska importer med CSS Modules. Varje sida laddar endast sina egna stilar, vilket gör täckningsanalys per sida, i stället för per applikation, meningsfull.
Mätning med Lighthouse
Lighthouse-granskningen "Reduce unused CSS" uppskattar hur många byte som potentiellt kan sparas genom att ta bort oanvända regler. Den identifierar specifika formatmallsresurser med hög andel oanvänd kod. Använd den som vägledning för att prioritera vilka filer som ska granskas först.
Täcka dynamiska tillstånd
Täckningsanalysen fångar endast tillstånd som är synliga under inspelningen. Hover-tillstånd, öppna modalfönster, feltillstånd och autentiserade tillstånd måste aktiveras manuellt under täckningsinspelningen för att deras stilar inte ska rensas bort av misstag.
Monolitisk CSS jämfört med CSS per komponent
Monolitiska globala formatmallar samlar på sig oanvänd CSS över tid när funktioner tas bort. CSS per komponent (CSS Modules, Styled Components, Tailwind-utilities) är enklare att rensa eftersom stilarna hör ihop med sina komponenter och tas bort tillsammans med dem.
Granska äldre kodbaser
För stora äldre CSS-filer: använd UnCSS eller PurgeCSS i läget report-only först. Sortera reglerna efter hur ofta de används. Extrahera och ta bort tydligt oanvända stilar från leverantörsplugins. Arbeta stegvis för att undvika att stilar för ovanliga tillstånd tas bort av misstag.
Kunskapskontroll
Vad mäter Chrome DevTools Coverage-panelen?
Sammanfattning
Analys av CSS-täckning med DevTools Coverage och Lighthouse identifierar oanvända regler. PurgeCSS och Tailwind JIT automatiserar eliminering av död kod. CSS Modules och uppdelning per route förhindrar att oanvända stilar samlas på hög. Tillsammans minimerar de CSS-mängden och tiden för parsning.
Lär dig CSS med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 40
- Lektioner
- 159
Vanliga frågor
Är lektionen ”CSS-täckning och oanvända format” gratis?
Ja – hela texten till ”CSS-täckning och oanvända format” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i CSS Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i CSS Academy innehåller totalt 4 lektioner.
Vad lär jag mig i ”CSS-täckning och oanvända format”?
Identifiera och ta bort oanvänd CSS med DevTools panel Coverage och verktyg för tree shaking, till exempel PurgeCSS. Ni övar på CSS Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig CSS Academy?
Du behöver inga förkunskaper. Utbildningen i CSS Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.
Hur lång tid tar lektionen ”CSS-täckning och oanvända format”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här CSS Academy-lektionen?
Ja. Varje CSS Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Kritisk CSS och renderingsblockering
- Layout, målning och komposition: renderingspipelinen
- will-change och lagerfrämjande
- CSS-täckning och oanvända format