字体与排版
排版(Typography)决定文字的"气质"。Tailwind 把字号、字重、行高、字间距、对齐等属性都封装成简洁的工具类,且每个字号自带推荐的行高——你不用费心搭配,选个字号就行。
1. 字号:text-*
字号系列是最常用的。命名采用 T 恤尺码(xxs~9xl),非常直观:
<!-- 字号:text-<size> -->
<p class="text-xs"> <!-- 12px / 行高 16px(脚注、徽章) -->
<p class="text-sm"> <!-- 14px / 行高 20px(辅助说明、表单提示) -->
<p class="text-base"> <!-- 16px / 行高 24px(正文默认) -->
<p class="text-lg"> <!-- 18px / 行高 28px -->
<p class="text-xl"> <!-- 20px / 行高 28px(小标题) -->
<p class="text-2xl"> <!-- 24px / 行高 32px -->
<p class="text-3xl"> <!-- 30px / 行高 36px(h3) -->
<p class="text-4xl"> <!-- 36px / 行高 40px(h2) -->
<p class="text-5xl"> <!-- 48px / 行高 1(h1) -->
<p class="text-6xl"> <!-- 60px -->
<p class="text-7xl"> <!-- 72px -->
<p class="text-8xl"> <!-- 96px -->
<p class="text-9xl"> <!-- 128px -->
<!-- 每个字号都自带推荐行高,不用单独再设 leading-* -->实战经验:
text-xs(12px):徽章、脚注、表单提示。text-sm(14px):辅助说明、面包屑、表格副文本。text-base(16px):正文默认,不要改。text-lg~text-xl:卡片标题。text-2xl~text-4xl:页面 h2/h3。text-5xl+:hero 区主标题。
2. 字重:font-*
<!-- 字重:font-<weight> -->
<p class="font-thin"> <!-- 100 细 -->
<p class="font-extralight"> <!-- 200 -->
<p class="font-light"> <!-- 300 -->
<p class="font-normal"> <!-- 400 默认 -->
<p class="font-medium"> <!-- 500(常用强调) -->
<p class="font-semibold"> <!-- 600(小标题常用) -->
<p class="font-bold"> <!-- 700(标题常用) -->
<p class="font-extrabold"> <!-- 800 -->
<p class="font-black"> <!-- 900 -->
<!-- 实战中最常用:font-medium / font-semibold / font-bold -->记住这三个就够 90% 场景:font-medium(轻度强调)、font-semibold(小标题)、font-bold(大标题)。font-thin/light 用得少,字体不一定支持。
3. 文字对齐:text-*
<!-- 文字对齐:text-<align> -->
<p class="text-left"> <!-- 左对齐(默认) -->
<p class="text-center"> <!-- 居中 -->
<p class="text-right"> <!-- 右对齐 -->
<p class="text-justify"> <!-- 两端对齐 -->
<!-- 配合响应式前缀:手机左对齐、桌面居中 -->
<p class="text-left md:text-center">内容</p>4. 行高:leading-*
每个字号都有默认行高,大多数时候不用改。但长文阅读时,适当放松行高能大幅提升阅读体验:
<!-- 行高:leading-<value> -->
<p class="leading-none"> <!-- 1 -->
<p class="leading-tight"> <!-- 1.25 -->
<p class="leading-snug"> <!-- 1.375 -->
<p class="leading-normal"> <!-- 1.5(默认,适合正文) -->
<p class="leading-relaxed"> <!-- 1.625(长文阅读) -->
<p class="leading-loose"> <!-- 2 -->
<!-- 也可以数字:leading-6 => line-height: 24px(1.5rem) -->
<p class="leading-6">固定行高 24px</p>5. 字间距:tracking-*
字间距对设计感的影响远超想象。大写小字 + 宽字间距是经典的"高级感"配方:
<!-- 字间距:tracking-<value> -->
<p class="tracking-tighter"> <!-- -0.05em -->
<p class="tracking-tight"> <!-- -0.025em -->
<p class="tracking-normal"> <!-- 0(默认) -->
<p class="tracking-wide"> <!-- 0.025em -->
<p class="tracking-wider"> <!-- 0.05em -->
<p class="tracking-widest"> <!-- 0.1em(大写小字常用) -->
<!-- 经典:大写小字配 tracking-widest -->
<span class="text-xs uppercase tracking-widest text-gray-500">
CHAPTER 1
</span>6. 文字装饰
<!-- 文字装饰 -->
<a class="underline">下划线</a>
<a class="line-through">删除线</a>
<a class="no-underline">取消下划线</a>
<!-- 大小写转换 -->
<span class="uppercase">hello → HELLO</span>
<span class="lowercase">HELLO → hello</span>
<span class="capitalize">hello world → Hello World</span>
<!-- 文字截断(超长省略) -->
<p class="truncate">超长文本会被截断并以省略号结尾...</p>
<!-- 多行截断:line-clamp-* -->
<p class="line-clamp-2">超过两行就截断...</p>truncate 是高频类:让超长文字在一行内显示并以省略号结尾。line-clamp-* 是它的多行版本,用于卡片摘要"显示两行后省略"。
7. 字体族:font-*
Tailwind 提供三种基础字体族:
<!-- 字体族:font-<family> -->
<p class="font-sans"> <!-- 默认无衬线(system-ui) -->
<p class="font-serif"> <!-- 衬线字体 -->
<p class="font-mono"> <!-- 等宽字体(代码块常用) -->
<!-- 默认 font-sans 是系统字体栈:
ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, ...
想用自定义字体(如 Inter),在 config 里扩展:
theme.extend.fontFamily.sans = ["Inter", "system-ui", "sans-serif"]
然后 CSS 里 @import 或 link 引入字体文件 -->要用自定义字体(比如 Google Fonts 的 Inter、思源黑体),需要在 tailwind.config.js 扩展 fontFamily。后面"自定义配置"篇详讲。
8. 排版的"铁律"
- 正文行宽:别超过 70~80 字符。用
max-w-prose或max-w-2xl限制宽度。 - 正文行高:用
leading-relaxed(1.625)让长文更舒服。 - 正文颜色:用
text-gray-700而非纯黑(text-black),视觉更柔和。 - 标题层级:通过字号 + 字重双维度区分,而不是单靠字号。
- 留白:标题和正文之间用
mt-2/mt-4留呼吸感,别贴在一起。
9. 常见组合
- 页面 H1:
text-5xl font-bold text-gray-900 - 页面 H2:
text-3xl font-semibold text-gray-800 mt-8 - 卡片标题:
text-lg font-semibold text-gray-900 - 正文段落:
text-base leading-relaxed text-gray-700 - 辅助说明:
text-sm text-gray-500 - 大写标签:
text-xs uppercase tracking-widest text-gray-500
小结
记住核心几类:
text-xs/sm/base/lg/xl/2xl...:字号font-medium/semibold/bold:字重leading-normal/relaxed:行高tracking-wide/widest:字间距text-left/center/right:对齐truncate / line-clamp-*:截断uppercase / lowercase / capitalize:大小写
下一篇讲响应式——怎么让页面适应不同屏幕。
← 上一篇 颜色与背景
下一篇 响应式设计 →