CSS font-size-adjust Property

Beginner
6 min read
Updated: Oct 2026
3 examples
Live preview

Definition and Usage

The font-size-adjust property scales text so a font metric — by default lowercase x-height — matches a chosen proportion of font-size.

Use it when a font-family stack has fallbacks that look smaller or larger at the same size. Matching the primary font’s aspect value keeps fallbacks more legible, especially at small sizes.

Baseline 2024 · Newly available.

Not deprecated and not experimental. Cross-browser support became Baseline Newly available in July 2024. Older browsers ignore the property and keep the normal size.

CSS Syntax

syntax.css
font-size-adjust: none | <number> | from-font | <metric> <number|from-font> | initial | inherit;

The initial value is none. A bare number uses the default metric ex-height. Numbers must be 0 or greater.

Property Values

ValueDescriptionTry it
<number>Target aspect value (default metric: ex-height)Try it
noneNo adjustment. Initial valueTry it
Match first fontUse the primary font’s aspect (e.g. Verdana ~0.545) on a fallbackTry it
from-fontRead the metric from the first available fontTry it
cap-height + numberNormalize uppercase height instead of x-heightTry it
inheritUses the parent’s font-size-adjustTry it

How to Use font-size-adjust

Find the primary font’s aspect value, then apply it so fallbacks keep a similar lowercase height.

  1. Build a font-family stack with a first-choice font and clear fallbacks.
  2. Set a normal font-size for the text.
  3. Set font-size-adjust to the primary font’s aspect value (or use from-font).
  4. Compare with none — adjusted fallbacks should look closer in apparent size.
PieceRequired?Role
font-family stackYesFirst font + fallbacks with different metrics
font-sizeYesBase size the adjustment scales from
Aspect / metric valueYes (unless none)Number, from-font, or metric + value
Visible lowercase textRecommendedx-height differences are easiest to see on lowercase letters

Live Preview

Times New Roman often looks smaller than Verdana at the same font-size. Change font-size-adjust on the Times line.

Verdana stays fixed. Only the Times sample is adjusted.

Compare

Verdana: the quick brown fox

Times: the quick brown fox

font-size-adjust: 0.545

CSS Examples

Each snippet focuses on font-size-adjust. Use Try It Yourself for a live editor.

Example 1 — Aspect Number

A bare number targets lowercase x-height (ex-height).

CSS
<style>
  p {
    font-family: Times, "Times New Roman", serif;
    font-size: 16px;
    font-size-adjust: 0.5;
  }
</style>

<p>Adjusted with aspect value 0.5.</p>
Try It Yourself

How It Works

  1. Pick a serif face. Times often has a lower x-height than many sans fonts.
  2. Keep a normal size. font-size: 16px is the base the browser scales from.
  3. Set the aspect. 0.5 means “make the x-height about half of font-size.”
  4. Default metric. With one number, the metric is ex-height (lowercase height).

Example 2 — Match Verdana’s Aspect

Copy the primary font’s aspect onto a smaller-looking fallback.

CSS
<style>
  .primary {
    font-family: Verdana, sans-serif;
    font-size: 14px;
  }
  .fallback {
    font-family: Times, "Times New Roman", serif;
    font-size: 14px;
    font-size-adjust: 0.545;
  }
</style>

<p class="primary">Verdana reference.</p>
<p class="fallback">Times matched to Verdana.</p>
Try It Yourself

How It Works

  1. Same font-size. Both lines use 14px so only metrics differ.
  2. Use Verdana as reference. Its aspect value is often about 0.545.
  3. Adjust Times. font-size-adjust: 0.545 scales Times so lowercase height is closer.
  4. Why it helps. If Verdana is missing, the fallback stays more readable at small sizes.

Example 3 — from-font

Let the browser read the metric from the first available font.

CSS
<style>
  p {
    font-family: Verdana, Times, serif;
    font-size: 16px;
    font-size-adjust: from-font;
  }
</style>

<p>Metric comes from the first available font.</p>
Try It Yourself

How It Works

  1. List the stack. Verdana first, Times as fallback.
  2. Skip a hard-coded number. from-font reads the metric from the first font that loads.
  3. Adjust later faces. If the browser uses Times, it scales toward Verdana’s metric.
  4. When to use it. Handy when you do not want to look up an aspect value by hand.

Edge Cases & Pitfalls

If the adjustment looks wrong or missing, check these first.

primary

It scales every font, not only fallbacks

Pick a number that matches your first-choice font. A wrong aspect will also resize that primary face.

zero

0 hides the text

font-size-adjust: 0 produces zero-height text. Negative numbers are invalid.

metric

Default metric is ex-height

One number alone normalizes lowercase height. Use cap-height, ch-width, or other metrics when you need a different match.

size

Do not replace font-size

To make the primary font larger, change font-size. Use font-size-adjust to align metrics across faces.

support

Older browsers ignore it

Unsupported engines keep the normal size. Design so the page still reads well with none.

Browser Support

font-size-adjust is a browser CSS property for font metrics. Node.js, Deno, and Bun do not apply it.

✓ Baseline 2024 · Newly available

font-size-adjust

Chrome/Edge 127+, Firefox 118+, Safari 17+. Internet Explorer: none. Older Chromium builds had the flag disabled.

90% approx. modern coverage
Google Chrome 127+
Full support
Mozilla Firefox 118+
Full support
Apple Safari 17+
Full support
Microsoft Edge 127+
Full support
Opera 113+
Full support
Samsung Internet Chromium 127+
Full support
Internet Explorer No support
Not supported
font-size-adjust Newly available (2024)

Bottom line: Safe as progressive enhancement on modern browsers. Text remains readable when the property is ignored. It is not a runtime API.

Key Takeaways

  • Role: keep apparent size consistent across fonts by matching a metric.
  • Default metric: a bare number uses ex-height (lowercase x-height).
  • from-font: borrow the metric from the first available face.
  • Initial value: none. Inherited by default.

One line: font-size-adjust: 0.545; can make a low-x-height fallback look closer to Verdana.

Frequently Asked Questions

It scales a font so a chosen metric (by default lowercase x-height) matches a target proportion of font-size. That keeps fallback fonts looking closer in size to the first-choice font.
The initial value is none, so no adjustment is applied.
For the default ex-height metric, the number is the ratio of x-height to font-size. Verdana is often about 0.545; Times is lower, so it can look smaller at the same font-size.
No. The adjustment is applied to every font used to render the text, including the first-choice face. Pick a number that matches your primary font’s metric so that face stays natural.
from-font reads the metric value from the first available font in the stack, then uses that to adjust other fonts.
It is Baseline Newly available since July 2024. Chrome/Edge 127+, Firefox 118+, Safari 17+. Internet Explorer has no support. It is a browser CSS property, not a Node.js feature.

Next: font-stretch

Choose condensed, normal, or expanded widths within a font family.

font-stretch tutorial →

About the author

Mari Selvan M P
Mari Selvan M P 🔗

Developer, cloud engineer, and technical writer

  • Experience 12 years building web and cloud systems
  • Focus Full Stack Development, AWS, and Developer Education

I write practical tutorials so students and working developers can learn by doing—from databases and APIs to deployment on AWS.

8 people found this page helpful