WordPress typography works best through theme presets, Global Styles, and limited block overrides.
Define named font families and sizes. Apply those choices by content role, not visual guessing.
Custom CSS remains useful for unsupported requirements. It should not replace a missing type system.
Start with typography ownership
- The theme registers available typography settings and presets.
- Global Styles sets shared defaults and block rules.
- Templates provide structural context.
- Individual blocks can carry supported local overrides.
- Custom CSS handles documented unsupported cases.
Fix typography at the narrowest correct owner. One odd paragraph should not trigger global redesign.
Use named font families
A font family preset creates a reusable choice. The theme can change its implementation centrally.
Names should describe a role or family clearly. Avoid labels based only on temporary appearance.
Keep the available list small. Too many nearly identical families create editorial inconsistency.
Use a deliberate font-size scale
A type scale provides a limited set of related sizes. Each size should serve useful roles.
Common roles include small metadata, body text, lead text, and several display sizes.
Avoid seven values clustered together. Readers cannot perceive the intended hierarchy reliably.
Find typography controls
- Select the intended block.
- Open the settings sidebar.
- Choose Styles when required.
- Expand Typography.
- Select a family or size preset.
- Adjust supported secondary properties cautiously.
- Preview the public page.
Available controls differ by block and theme. Missing tools may reflect deliberate configuration.
Understand theme typography settings
The official typography guide documents theme.json settings. Themes can register families, sizes, and fluid behaviour.
Themes also enable controls for weight, style, spacing, decoration, transformation, and line height.
Configuration availability does not make every choice wise. A design system still needs editorial constraints.
Understand block support
Blocks declare supported typography properties. WordPress stores chosen local values within the block style attribute. More on that in font loading on WordPress block themes.
The Block Supports reference explains this system. Theme settings and block support must both align.
A Paragraph may expose controls that another specialised block omits. Do not assume universal support.
Set body text first
Body text establishes the page’s reading baseline. Choose it before designing dramatic headings.
Test long articles, short labels, links, lists, and emphasis. One attractive paragraph proves little.
Check common screens and enlarged text. Body copy should remain comfortable across both.
Keep heading levels semantic
Heading levels describe document structure. Their font sizes should reinforce that structure without defining it.
Do not choose H4 because its default looks smaller. Choose the correct level, then style it.
Check the document outline before publication. Visual hierarchy and semantic hierarchy should agree.
Use the WordPress document outline to verify that structure.
Use fluid typography within limits
Fluid typography scales between defined minimum and maximum values. It smooths changes across viewport widths.
WordPress can generate fluid values for registered sizes. The theme decides whether fluid sizing is enabled.
Minimum and maximum limits remain essential. Unlimited scaling makes narrow and wide layouts unstable.
Test intermediate widths and browser zoom. Fluid does not mean automatically readable.
Choose line height by text role
Body text usually needs more line height than compact display text. Font design also matters.
Very tight lines make tracking difficult. Excessive spacing can disconnect one line from the next.
Test paragraphs containing links, emphasis, and inline code. Mixed glyph shapes expose collisions.
Choose weights that actually exist
Browsers can simulate missing weights. Synthetic bold may look poorer than a real font file.
Register only weights the site needs. Every additional webfont file can increase transfer and rendering work.
Use weight consistently for hierarchy and emphasis. Do not rely on subtle differences alone.
Use italic styles carefully
Real italic fonts often differ structurally from slanted roman text. Register them when frequent emphasis requires quality.
Long italic passages can become tiring. Use quotation or callout structure when the role differs.
Semantic emphasis should remain meaningful without styling. Screen readers can communicate the underlying element.
Use letter spacing sparingly
Letter spacing can help some short uppercase labels. It can damage normal body reading quickly.
Font designers already set spacing relationships. Override them only for a tested role.
Check long labels, numbers, and translations. Added spacing can create unexpected wrapping.
Use text transforms with semantic awareness
Uppercase transforms change appearance without changing stored text. That preserves ordinary source casing.
Long uppercase text reduces recognisable word shapes. Reserve it for short labels where appropriate.
Capitalisation rules vary by language. Test translated content rather than assuming English behaviour.
Use decoration for meaning
Underlines commonly indicate links. Decorative underlines on plain text can create false affordances.
Strikethrough indicates removal or an obsolete value. Provide context instead of relying upon the line.
Never remove link distinction without a reliable alternative. Colour alone may be insufficient.
Control line length through layout
Typography cannot fix an unlimited content width. Set a readable layout measure first.
Font size, family, and line length interact. Test them as one reading system.
Wide media can escape content width while paragraphs remain constrained. That contrast supports editorial rhythm.
Use Global Styles for shared defaults
Global Styles can set site-wide text, heading, link, and block typography. Changes may affect many templates.
Preview representative pages before saving. Check articles, archives, navigation, forms, and plugin blocks.
Record previous values. A global change should have a clear review and rollback path.
Use block-level settings for real exceptions
A lead paragraph may need a larger preset. Metadata may use the approved small preset.
These are content roles, not random decoration. Patterns can preserve them consistently.
Avoid custom sizes on routine paragraphs. They will not follow later preset improvements.
Reset local typography safely
- Save a revision.
- Identify the expected theme style.
- Select the affected block.
- Review Typography controls.
- Reset one local property.
- Compare editor and frontend output.
- Preserve deliberate semantic emphasis.
Do not reset every style blindly. Colour, spacing, and typography can have separate owners.
Load webfonts responsibly
Each family, style, and weight may require another resource. Large font inventories slow first rendering.
Use modern formats and limited character sets where appropriate. Licensing must permit the chosen hosting method.
System font stacks avoid webfont downloads. They remain a strong choice for performance-focused sites.
Prevent layout movement from fonts
Fallback fonts can occupy different widths and heights. The page may move when webfonts arrive.
Choose compatible fallbacks and appropriate loading behaviour. Measure public output under a cold cache.
Do not hide all text while fonts download. Content availability matters more than typographic perfection.
Check typography in interactive blocks
Buttons, navigation, tabs, accordions, and forms need readable labels. Controls may have specialised defaults.
Do not shrink labels to preserve one line. Allow wrapping or change the layout.
Test focus, hover, disabled, and error states. Typography remains part of every state.
Check multilingual content
The chosen family must contain required scripts and marks. Missing glyphs trigger inconsistent fallbacks.
Words may expand substantially during translation. Test headings, buttons, tables, and navigation with realistic strings.
Line breaking rules differ across languages. English screenshots cannot prove global typography quality.
Check accessibility under zoom
Zoom the browser to 200% and 400%. Text should reflow without losing content or controls.
Check line height, clipping, overlaps, and horizontal scrolling. Fixed heights frequently fail this test.
Respect user font choices where possible. Do not disable scaling to protect a layout.
Diagnose missing typography controls
- Select the correct block.
- Open its Typography panel.
- Confirm block support for the property.
- Check theme typography settings.
- Review editor permissions and restrictions.
- Test the active theme on staging.
- Add CSS only for a documented gap.
A plugin block may own its own typography controls. Check its maintained documentation before overriding output.
Diagnose inconsistent typography
- Compare the affected block type.
- Check its selected preset.
- Inspect local custom values.
- Review Global Styles.
- Check additional classes.
- Inspect theme and plugin CSS.
- Confirm the loaded font files.
- Compare public computed styles.
Change one layer at a time. Several simultaneous resets destroy useful diagnostic evidence.
Build typography into patterns
Patterns can preserve lead text, metadata roles, callouts, and action labels using approved presets.
Use realistic long content. Short placeholders conceal wrapping and hierarchy failures.
Lock only fragile structural choices. Editors still need semantic headings and legitimate emphasis.
Understand the Font Library boundary
The Font Library can manage installed font families for supported block themes. Availability depends on site configuration.
Installing a font does not assign its design role. Global Styles and theme presets still need deliberate mapping.
Check licences before uploading font files. Web embedding and redistribution rights can differ.
Use variable fonts with restraint
A variable font can include ranges of weight, width, or other axes. One file may cover several styles.
That flexibility does not require exposing every axis to editors. Approved roles still need stable values.
Test browser support and real transfer sizes. A variable file is not automatically smaller.
Style code and preformatted text separately
Code requires clear character distinction and preserved spacing. A suitable monospace family helps scanning.
Keep code size readable without dominating body text. Long lines need wrapping or controlled scrolling.
Do not use monospace merely for decoration. Its structure communicates technical content.
Style captions and metadata carefully
Captions and metadata can use a smaller approved preset. Small must remain readable under ordinary conditions.
Do not combine tiny text with low contrast. Two weak signals make information effectively disappear.
Keep captions visually connected to media. Typography and spacing should establish that relationship together.
Check typography inside tables
Tables need compact but readable text. Headers should remain distinguishable without excessive weight.
Numbers may benefit from aligned numeral forms. Verify the chosen font supports them consistently.
Do not shrink tables until they fit. Allow an appropriate layout or scrolling solution.
Use drop caps only when they help reading
Drop caps create an editorial opening signal. They can also complicate line flow and language support.
Test short first paragraphs, punctuation, links, and enlarged text. The ornament should not obscure words.
Skip them when the design has no editorial reason. Ordinary paragraphs remain the reliable weak case.
Audit local typography overrides
Count custom sizes, families, line heights, weights, and letter spacing across content.
Group them by content role before consolidation. Similar numbers can represent different editorial needs.
Map repeated legitimate roles into presets. Remove accidental values after revision-backed review.
Review typography after theme switching
Preset names and slugs can change between themes. Local custom values may retain outdated assumptions.
Test headings, body text, metadata, controls, tables, code, and translated content on staging.
Compare font loading and layout movement. Visual similarity alone cannot prove a successful migration.
Approve typography on production-like pages
Test cold and warm loads with production font files. Local development can hide loading delays.
Check the longest article and smallest component. A type system must serve both.
Record approved presets, exceptions, and fallback behaviour. Future editors need more than visual memory.
Retest after theme, font, or content updates. Typography quality changes when any dependency changes.
Keep a regression page containing every approved text role.
Review it regularly.
Typography checklist
- Define body text first.
- Register limited family and size presets.
- Map presets to content roles.
- Keep heading levels semantic.
- Set readable line height.
- Use real available weights.
- Limit letter spacing and transforms.
- Constrain long text lines.
- Test webfont performance.
- Test translations and long labels.
- Test zoom and reflow.
- Document unsupported CSS exceptions.
Frequently asked questions
How do I change WordPress block typography?
Select the block, open Typography, and choose a theme preset or supported setting.
Why are typography controls missing?
The block or theme may not enable that specific typography property.
What is fluid typography in WordPress?
Fluid typography scales registered sizes between defined limits as the viewport changes.
Should I use custom font sizes?
Use approved presets routinely. Reserve custom sizes for documented exceptional content roles.
When does block typography need custom CSS?
Use CSS when supported controls cannot express a tested specialist requirement.
The verdict
Specialist blocks should inherit the same typography system wherever possible. Test free plugins first. Then compare the $299 lifetime suite when several Pro blocks suit maintained content.

Leave a Reply