Kuidas vältida 'stilsita sisu välguga' (FOUC) probleemi?
sobes.tech AI
Vastus AI-lt
Tõhusad viisid:
-
Sünkroonne CSS laadimine: asetage
<link rel="stylesheet"><head>sektsiooni, et brauser laadiks ja rakendaks stiile enne sisu renderdamist.<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>My App</title> <link rel="stylesheet" href="/styles/main.css"> <!-- Teised `<head>` elemendid --> </head> -
Kriitiliste stiilide sisestamine: sisestage stiilid, mis on vajalikud nähtava osa ("Above the fold") kuvamiseks, otse
<head>sektsiooni<style>-i abil. See kiirendab esialgset renderdamist:<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>My App</title> <style> /* Kriitilised stiilid */ body { margin: 0; padding: 0; } h1 { color: blue; } </style> <link rel="stylesheet" href="/styles/main.css"> <!-- Teised `<head>` elemendid --> </head> -
font-display: swapvõi sarnaste omaduste kasutamine fontidele: kasutagefont-display@font-facereeglites, et tekst kuvatakse kohe süsteemifondiga ja asendatakse see kohandatud fondiga laadimise järel:@font-face { font-family: 'MyCustomFont'; src: url('my-custom-font.woff2') format('woff2'); font-display: swap; /* või fallback, optional, block */ } -
Serveripoolse renderdamise (SSR) kerge šabloonide kasutamine: kui kasutatakse SSR-i, saab HTML-i sisestada minimaalse vajaliku stiilide komplekti, et kuvada lehe skeleti.
-
CSS failide minimeerimine ja ühendamine: vähendage HTTP-päringute arvu ja CSS-failide suurust, et neid kiiremini laadida.
-
Ehitusvahendite kasutamine: Webpack, Parcel ja teised tööriistad võivad automaatselt integreerida kriitilised stiilid ja optimeerida CSS-i.