CSS line-height
属性详解(表格不含代码)

1. 属性核心功能
控制文本行间距(基线间垂直距离),默认值 normal
(通常为字体大小的 1.2 倍)。
2. 属性值类型及效果对比
值类型 | 语法格式 | 计算方式 | 适用场景 | 注意事项 |
---|
数值(number) | line-height: 1.5; | 行高 = 字体大小 × 数值 | 响应式布局(自动适配字体大小) | 需与 font-size 协同使用 |
长度(length) | line-height: 20px; | 固定行高(如 px , em , rem ) | 精确控制(如图标容器、标题) | 不响应字体大小变化 |
百分比(%) | line-height: 150%; | 行高 = 字体大小 × (百分比/100) | 比例适配(如移动端自适应) | 同长度类型,需明确基准字体大小 |
normal | line-height: normal; | 浏览器默认值(通常 1.2 倍字体大小) | 默认文本(如段落) | 跨浏览器可能有细微差异 |
3. 关键特性总结
特性 | 描述 | 示例场景 |
---|
继承性 | 可继承,子元素默认继承父级 line-height | 全局设置 body { line-height: 1.6; } |
块级元素效果 | 决定文本基线间距,元素高度由内容撑开(除非设置 height ) | 段落文本布局 |
内联元素效果 | 仅影响自身文本垂直对齐,实际行高由父级块级元素决定 | 内联图标与文本混合 |
垂直居中单行文本 | 设置容器高度与 line-height 相等即可实现垂直居中 | 导航栏按钮文字居中 |
4. 常见组合与最佳实践
场景 | 解决方案 | 说明 |
---|
响应式文本 | 全局设 line-height: 1.5 ,标题设 line-height: 1.2 | 自动适配字体大小,保持一致性 |
避免行高塌陷 | 为父级添加 overflow: hidden 或手动设置段落外边距 | 补偿相邻块级元素间距 |
多行文本垂直居中 | 结合 Flex 布局(如 display: flex; align-items: center ) | 比单依赖 line-height 更可靠 |
内联元素行高控制 | 将内联元素包裹在独立块级容器中,单独设置 line-height | 避免依赖父级行高 |
5. 兼容性与问题解决
问题 | 解决方案 |
---|
跨浏览器默认值差异 | 显式设置 line-height 值(如 1.5 )以统一效果 |
内联元素行高失效 | 通过块级容器包裹内联元素,单独控制其 line-height |
旧版浏览器(如 IE)问题 | 避免百分比,改用 em 或 px 单位,确保计算一致性 |
6. 完整对比表格(仅文字描述)
属性值类型 | 计算方式 | 是否响应字体大小 | 典型用途 | 兼容性 |
---|
数值(如 1.5) | 相对于字体大小的倍数 | 是 | 响应式布局 | 全部浏览器支持 |
长度(如 24px) | 固定像素值 | 否 | 精确控制(标题、按钮) | 全部浏览器支持 |
百分比(如 150%) | 相对于字体大小的百分比 | 是 | 比例适配(移动端) | 需注意基准字体大小 |
normal | 浏览器默认值(通常 1.2 倍字体大小) | 是 | 默认文本(段落) | 跨浏览器可能有细微差异 |