Spring til indhold

Har skåret stylesheet‑bundtet fra 87 KB til 31 KB

Har skåret stylesheet‑bundtet fra 87 KB til 31 KB ved at tage en base64‑skrifttype ud af det og fjernet 756 KB fordelt på 22 filer, der blev udgivet ved hver udrulning, men som intet henviste til.

  • Feather, hd wallpaper, ease
    Foto: Sponchia / Pixabay
  • Kettlebell, crossfit, training
    Foto: Jangnyg / Pixabay

31 KB stylesheet, ned fra 87

Situation. Sitets stylesheet‑bundt var på 87 KB, og for et dokumentsite uden framework er det det meste af en sidevægt, der er brugt, før noget indhold når frem. Sitet udgav også en mappe med ikoner ved hver udrulning, genereret én gang og ikke refereret af noget siden.

Opgave. Vægten skulle ned, uden at designet ændrede sig, og den skulle ned af en grund, man kunne pege på, og ikke ved almindelig oprydning.

Handling. Måling først. To tredjedele af det største stylesheet var én base64‑kodet font — omkring 56 KB tekst, der koder omkring 42 KB font — indlejret for at opnå en gevinst ved første optegning, som en forudindlæst ekstern fil alligevel får, og betalt på hver side, uanset om vægten var nødvendig eller ej. Da den blev taget ud, faldt den fil fra 84 KB til 28 og hele bundtet fra 87 til 31. De tre fontvægte forudindlæses i stedet, og den tredje kom først på listen, da feltdata viste, at den lukkede den længste kritiske kæde, og ikke fordi tre lød komplet. Særskilt fandt en gennemgang af, hvad udrulningen reelt udgav, enogtyve genererede ikoner og en dubleret konfigurationsfil, 756 KB, der blev sendt ud hver gang og ikke refereret fra noget sted; og selve sitets ikonfil kom ned fra 145 KB til 15. Et moderne billedformat blev vurderet til bomærket, målt og fravalgt — filen blev større, og udvælgelsesmekanismen vælger efter rækkefølge og ikke efter størrelse, så en moderne browser ville have taget den tungere fil overalt. To tjek sikrer nu, at det holder: intet fotografi må vises bredere end halvdelen af sine kildepixels, og hver illustration skal udgives i en størrelse, dens egne pixels understøtter ved både normal og høj tæthed.

Resultat. Bundtet er på 31 KB i stedet for 87, 756 KB døde filer bliver ikke længere udrullet, og hver beslutning har en måling knyttet til sig — også den, der gik den anden vej, og det er den mest nyttige optegnelse af de to.

Ét stykke af en længere fortegnelse — og det hele ligger her på sitet.

Hver post er skrevet på samme måde: situationen, opgaven, hvad vi gjorde, og hvad der ændrede sig.

Se hele fortegnelsen