Font size is measured differently depending on whether you're in print design, web development, or graphic software — and the units don't always mean what they look like they mean. A 12pt font in a word processor and a 12px font in a web browser are not the same size. Understanding why requires a brief trip into the history of type measurement, but the practical payoff is the ability to specify text sizes consistently across platforms.
Relative Units for Responsive Design
Modern web design uses relative font size units that scale appropriately across different device sizes and user preferences. Em, rem, percentage, and viewport units are all relative to some reference size rather than fixed physical dimensions.
Em: 1em equals the computed font size of the parent element. If a parent container has font-size: 16px and a child has font-size: 1.5em, the child renders at 24px. Em units are useful for padding and margin sizes that should scale with font size, but nested elements compound: a child with 1.5em inside a parent with 1.5em inside a container with 16px renders at 16 × 1.5 × 1.5 = 36px. This compounding can produce unexpected results.
Rem (root em): 1rem equals the font size of the root HTML element, regardless of nesting. If the root is 16px, 1.5rem is always 24px regardless of where it's used in the document. Rem units avoid the compounding problem of em units. Many designers set a base rem size (often 16px or 10px for calculation convenience) and express all font sizes as rem values.
Viewport units (vw, vh) size type relative to the viewport dimension. 1vw = 1% of viewport width. A font at 3vw appears at 3% of the current screen width — scaling smoothly on all screen sizes. This is useful for responsive headlines that should fill available width proportionally. A 3vw font on a 1440px wide screen is 43.2px; on a 375px mobile screen it's 11.25px — automatically appropriate for each context.