Comparison
Flash of unstyled contentvsfont-display
Flash of unstyled content
the page appears for a fraction of a second as raw serif text before the styles land.
Content painting before its stylesheet has been applied, usually because the CSS was loaded asynchronously or injected by script. It looks like a broken page even though nothing is broken, and it is worse on a slow connection where the unstyled state persists long enough to read. The related font versions — invisible text while a webfont loads, or a visible swap once it arrives — come from the same cause and are controlled with `font-display`.
Full entry →font-display
the text was invisible for a moment while the webfont loaded, then appeared all at once.
The descriptor controlling what the browser shows while a webfont is loading: nothing (a flash of invisible text), a fallback that is later swapped (a flash of unstyled text), or the fallback permanently. `swap` gets text on screen immediately at the cost of a visible reflow when the real font arrives. Matching the fallback's metrics to the webfont with size-adjust descriptors is what turns that reflow from a jolt into something barely noticeable.
Full entry →