Readability and typography
Comfortable reading is the floor for everything else on a page. If the line is too long, the type too small, or the words too dense, no amount of clever design saves the experience. Back to the section overview.
Language and tone
Plain language is not "dumbing down" -- it reduces cognitive load so people can act on what you say. Front-load the meaning: first sentence answers the question; supporting detail follows.
Do
Team plans include shared billing and priority support. You can add or remove
seats any time; we prorate the difference on your next invoice.
Don't
Leveraging our synergistic enterprise-grade paradigm, stakeholders who opt into
the cohort-oriented monetization stream will experience uplift across the
value realization funnel -- consult your success partner for enablement.
Do (define terms once)
We use single sign-on (SSO) so your team logs in with your company identity
provider (for example Okta or Microsoft Entra ID). After SSO is enabled,
password login stays available as a fallback unless you disable it.
Don't (unexplained jargon)
Enable IdP-initiated SAML SP flows on the tenant for JIT SCIM provisioning.
Microcopy basics
Microcopy is the small text next to controls. It should say what happens next, not celebrate your brand. For a deeper reference -- buttons, validation, empty states, loading, success and error pages -- see Microcopy and error states.
Do
Button: Save changes
Error: Enter an email address so we can send the receipt.
Empty state: No invoices yet. When you create one, it will appear here.
Don't
Button: Let's go!
Error: Invalid input
Empty state: Nothing to see here
Typography and measure (CSS)
Measure is how long a line of text runs. For Latin scripts, roughly 45--75 characters per line is a common comfortable range. Line height near 1.4--1.6 for body text improves readability on screens. Root font size at least 16px (or 1rem) for body copy respects user defaults and zoom.
Do
:root {
font-size: 100%; /* respect user browser defaults; 1rem ~= 16px */
}
.prose {
max-width: 65ch; /* "ch" ~= width of "0" -- line length tied to font */
line-height: 1.55;
font-size: 1rem;
}
Don't
/* Tiny base text and full viewport width make lines hard to track */
body {
font-size: 12px;
width: 100vw;
}
article p {
line-height: 1.05;
}
Do (responsive type without shrinking body below readable size)
@media (min-width: 768px) {
.prose {
font-size: 1.0625rem;
}
}
Don't
/* Shrinking primary reading text on mobile */
@media (max-width: 600px) {
body {
font-size: 11px;
}
}
Related
- Structure and hierarchy -- where to put headings and how dense paragraphs should be.
- Color and contrast -- making the type you sized actually readable.
- CSS: Colors and Typography -- the underlying CSS reference.