Tailwind CSS 行高

Tailwind 行高语法

在 Tailwind CSS 中,我们可以使用 “leading-*” 相关的类名来定义文本的行高(相当于传统 CSS 中的 line-height)。

语法:

leading-{值}

说明:

行高的 “值” 可以是 3 种:① 语义化类名;② 数字(4px 系统);③ 任意值。

如果是语义化类名,常用的如下表所示。

“行高” 类名
类名 对应 CSS 说明
leading-none line-height: 1; 无额外行距
leading-tight line-height: 1.25; 紧凑
leading-snug line-height: 1.375; 舒适
leading-normal(默认) line-height: 1.5; 正常
leading-relaxed line-height: 1.625; 宽敞
leading-loose line-height: 2; 极宽

如果是数字,此时这类类名是使用 “4px” 倍数的固定像素值,比如:

  • leading-1:表示行高为 4px。
  • leading-2:表示行高为 8px。
  • leading-3:表示行高为 12px。
  • leading-4:表示行高为 16px。
  • ……

Tailwind CSS 行高示例

接下来,我们通过一个简单的例子来讲解一下如何使用 Tailwind CSS 来定义元素的行高。

示例 1:定义行高

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title></title>
    <script src="https://unpkg.com/@tailwindcss/browser@4"></script>
</head>
<body class="p-10 max-w-sm">
    <p class="leading-tight bg-red-300">
        绿叶网专注于教程的易懂性,让完全 0 基础的小白也能更快上手。所有教程均提供丰富示例,让你边学边练,快速提升编程技能。
    </p>
    <p class="leading-relaxed bg-green-300">
        绿叶网专注于教程的易懂性,让完全 0 基础的小白也能更快上手。所有教程均提供丰富示例,让你边学边练,快速提升编程技能。
    </p>
</body>
</html>

页面效果如下图所示。

Tailwind CSS 定义行高

分析:

第 1 个段落使用了 leading-tight(1.25倍),此时可以会发现文字上下挨得很近。这种行高适合用于字数不多的标题上,但不适合用于大段正文。

第 2 个段落使用了 leading-relaxed(1.625倍),这是网页设计中被公认为是最舒适的阅读比例之一。文字之间有适度的留白,看起来非常通透。

Tailwind CSS 字号与行高 “组合”

在实际开发中,我们往往是在设置字体大小时,顺便把行高也一起设置了。Tailwind CSS 为我们提供了一个十分方便的组合语法。

语法:

text-{字号}/{行高}

示例 2:字号与行高组合使用

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title></title>
    <script src="https://unpkg.com/@tailwindcss/browser@4"></script>
</head>
<body class="p-10 max-w-sm">
    <p class="text-[18px]/[32px] bg-green-300">
        绿叶网专注于教程的易懂性,让完全 0 基础的小白也能更快上手。所有教程均提供丰富示例,让你边学边练,快速提升编程技能。
    </p>
</body>
</html>

页面效果如下图所示。

Tailwind CSS 同时定义字号与行高

分析:

text-[18px]/[32px] 表示将 font-size 定义为 18px,并且将 line-height 定义为 32px。

常见问题

1. 为什么给元素加上了 text-xl 之后,即便不写 leading-* 相关类名,行高好像也变了呢?

前面 “Tailwind 字体大小” 一节中我们提到过,当使用 text-xl、text-2xl 这种预设类名时,Tailwind CSS 会自动帮你搭配一个合适的默认行高。

在实际开发中,只有当我们对 Tailwind CSS 自动搭配的效果不满意时,才需要手动去写 leading-*。

2. 为什么我设置了 leading-none,文字的上下部分好像被切掉了一点?

leading-none 代表行高为 1(即行高等于字号)。如果你的字体包含了一些特殊的上标或下标(比如英文字母 y、g、j 的尾巴),在某些浏览器中可能会被细微地裁剪。

因此对于正文来说,行高至少要使用 leading-normal。

给站长反馈

绿叶网正在不断完善中,小伙伴们如果发现任何问题,还望多多给站长反馈,谢谢!

邮箱:lvyenet@vip.qq.com

「绿叶网」服务号
绿叶网服务号放大
关注服务号,微信也能看教程。
绿叶网服务号