字体系统
1. 字体系列
// tailwind.config.js 默认字体配置module.exports = {theme: {fontFamily: {'sans': ['ui-sans-serif', 'system-ui', '-apple-system', 'BlinkMacSystemFont'],'serif': ['ui-serif', 'Georgia'],'mono': ['ui-monospace', 'SFMono-Regular'],// 自定义字体'display': ['Oswald'],'body': ['Open Sans'],}}}
2. 字体使用
<!-- 基础字体应用 --><div class="font-sans">系统无衬线字体</div><div class="font-serif">衬线字体</div><div class="font-mono">等宽字体</div><!-- 自定义字体 --><h1 class="font-display">展示型标题</h1><p class="font-body">正文内容</p>
文本样式
1. 字体大小
<!-- 预设字体大小 --><h1 class="text-4xl">超大标题</h1><h2 class="text-3xl">大标题</h2><h3 class="text-2xl">中标题</h3><h4 class="text-xl">小标题</h4><p class="text-base">正文文本</p><span class="text-sm">小号文本</span><span class="text-xs">超小文本</span>
2. 字重控制
<!-- 字重变化 --><p class="font-thin">极细体 100</p><p class="font-light">细体 300</p><p class="font-normal">常规体 400</p><p class="font-medium">中等体 500</p><p class="font-semibold">半粗体 600</p><p class="font-bold">粗体 700</p><p class="font-extrabold">特粗体 800</p><p class="font-black">黑体 900</p>
3. 文本对齐
<!-- 对齐方式 --><p class="text-left">左对齐文本</p><p class="text-center">居中文本</p><p class="text-right">右对齐文本</p><p class="text-justify">两端对齐文本</p>
4. 文本装饰
<!-- 文本装饰 --><p class="underline">下划线文本</p><p class="overline">上划线文本</p><p class="line-through">删除线文本</p><p class="no-underline">无装饰文本</p><!-- 组合使用 --><a class="underline decoration-2 decoration-blue-500 hover:decoration-blue-700">自定义下划线</a>
高级排版特性
1. 行高控制
<!-- 行高设置 --><p class="leading-none">紧凑行高</p><p class="leading-tight">较紧行高</p><p class="leading-normal">正常行高</p><p class="leading-relaxed">宽松行高</p><p class="leading-loose">超宽行高</p><!-- 具体行高值 --><p class="leading-8">2rem 行高</p>
2. 字间距
<!-- 字母间距 --><p class="tracking-tighter">较紧字间距</p><p class="tracking-normal">正常字间距</p><p class="tracking-wide">宽字间距</p><!-- 单词间距 --><p class="space-x-4"><span>Word</span><span>Spacing</span><span>Example</span></p>
3. 文本溢出处理
<!-- 单行文本溢出 --><p class="truncate">这是一段很长的文本,将会被截断并显示省略号...</p><!-- 多行文本溢出 --><p class="line-clamp-2">这是一段很长的多行文本,超过两行的部分将被截断并显示省略号...</p>
响应式排版
1. 断点适配
<!-- 响应式字体大小 --><h1 class="text-2xl md:text-3xl lg:text-4xl">响应式标题</h1><!-- 响应式行高 --><p class="leading-normal md:leading-relaxed lg:leading-loose">响应式行高文本</p>
2. 文本对齐响应式
<!-- 响应式文本对齐 --><p class="text-left md:text-center lg:text-right">在不同屏幕尺寸下改变对齐方式的文本</p>
富文本排版
1. 使用 @apply
/* 富文本样式 */.prose h1 {@apply text-3xl font-bold mb-4;}.prose p {@apply text-gray-700 leading-relaxed mb-4;}.prose a {@apply text-blue-600 hover:text-blue-800 underline;}
2. 列表样式
<!-- 有序列表 --><ol class="list-decimal list-inside"><li>第一项</li><li>第二项</li><li>第三项</li></ol><!-- 无序列表 --><ul class="list-disc list-inside"><li>项目一</li><li>项目二</li><li>项目三</li></ul>
特殊效果
1. 渐变文本
<!-- 文本渐变 --><h1 class="bg-clip-text text-transparent bg-gradient-to-r from-blue-500 to-purple-500">渐变文本效果</h1>
2. 文本阴影
<!-- 文字阴影 --><h2 class="text-4xl font-bold text-white text-shadow">带阴影的文本</h2>
最佳实践
1. 排版规范
- 建立清晰的标题层级
- 保持一致的行高和间距
- 确保文本可读性
2. 响应式策略
- 使用相对单位
- 设置合适的断点
- 考虑移动设备可读性
3. 性能优化
- 合理使用字体加载
- 避免过多字体变体
- 优化文本渲染
总结
Tailwind CSS 的排版和文本样式系统提供了:
- 完整的字体控制
- 丰富的文本样式
- 灵活的响应式设计
- 强大的特效支持
通过合理运用这些特性,我们可以:
- 创建专业的排版效果
- 确保跨设备的可读性
- 提升用户体验
- 保持设计的一致性
在实际开发中,应该建立统一的排版规范,并在保证可读性的前提下,灵活运用各种排版特性。
