Responsive Typography
Embed This Widget
Add the script tag and a data attribute to embed this widget.
Embed via iframe for maximum compatibility.
<iframe src="https://fontfyi.com/iframe/glossary/responsive-typography/" width="420" height="400" frameborder="0" style="border:0;border-radius:10px;max-width:100%" loading="lazy"></iframe>
Paste this URL in WordPress, Medium, or any oEmbed-compatible platform.
https://fontfyi.com/glossary/responsive-typography/
Add a dynamic SVG badge to your README or docs.
[](https://fontfyi.com/glossary/responsive-typography/)
Use the native HTML custom element.
Typography that adapts to different screen sizes — using media queries, viewport units, or CSS clamp() for fluid scaling.
Responsive typography is the practice of designing type systems that adapt appropriately to different viewport sizes — not just scaling font sizes proportionally, but reconsidering spacing, line length, hierarchy, and reading experience for different contexts.
The simplest form is font size breakpoints. The sophisticated form uses fluid scaling with constraints.
Basic responsive typography with breakpoints:
:root {
font-size: 16px;
}
h1 {
font-size: 2rem; /* 32px on mobile */
}
@media (min-width: 768px) {
h1 { font-size: 2.5rem; } /* 40px on tablet */
}
@media (min-width: 1200px) {
h1 { font-size: 3.5rem; } /* 56px on desktop */
}
Fluid typography with clamp() (preferred modern approach):
h1 {
/* min: 2rem, max: 3.5rem, scaling between 375px and 1200px */
font-size: clamp(2rem, 1.5rem + 2.667vw, 3.5rem);
}
p {
font-size: clamp(1rem, 0.875rem + 0.667vw, 1.25rem);
}
The clamp() function eliminates breakpoints for type, creating smooth scaling. The middle value — the fluid part — is a vw (viewport width) calculation that controls how quickly the size grows.
Responsive line length:
Beyond font size, line length is the most important typographic variable for responsive design. Ideal line length is 60-75 characters. On mobile, constrained viewport width naturally limits this; on wide desktop viewports, you must actively constrain it:
.content {
max-width: 68ch; /* ch units track character width of the current font */
margin-inline: auto;
}
Responsive line-height:
Larger text needs less relative line-height; smaller text needs more:
h1 {
font-size: clamp(2rem, 4vw, 4rem);
line-height: 1.1; /* Tight for large display text */
}
p {
font-size: clamp(1rem, 1.5vw, 1.125rem);
line-height: 1.6; /* Generous for body text */
}
Container queries for typography:
With container queries, typography can respond to the container's width rather than the viewport — enabling components that adapt when used in sidebars versus full-width layouts:
.card { container-type: inline-size; }
.card h2 { font-size: 1.25rem; }
@container (min-width: 400px) {
.card h2 { font-size: 1.75rem; }
}
Google Fonts + Utopia.fyi is a productive pairing: Utopia generates responsive fluid type scales you can paste directly into your CSS, using fonts like Literata or Epilogue.
관련 용어
관련 도구
이 개념을 보여주는 폰트
더 알아보기
브레이크포인트 전반에 걸친 타이포그래피 스케일링 — 반응형 타입 스케일, clamp()를 이용한 유동적 크기 조정, 모바일부터 데스크톱까지 위계 유지까지 다룹니다.
디자인 시스템잘 정의된 타입 스케일은 일관된 디자인의 기초입니다. 비율을 선택하고, 단계를 정의하고, 여러 플랫폼에 적용하는 방법을 배웁니다.
접근성모바일 타이포그래피는 더 큰 크기, 넉넉한 줄 높이, 터치 친화적인 링크 간격이 필요합니다. 모바일 텍스트의 접근성 요구사항을 다룹니다.
접근성폰트 크기에 px를 사용하면 시각 장애가 있는 사용자의 브라우저 확대 기능이 깨집니다. rem이 왜 필수적이며 어떻게 올바르게 구현하는지 다룹니다.