跳到主要内容

免费 CSS clamp() 生成器

为响应式排版和间距生成流体 CSS clamp() 值。设置最小/最大尺寸和视口范围,实时预览,复制单行 CSS。

加载后可离线使用
输出单位:
CSS 值
font-size: clamp(1rem, 1.5023vw + 0.6479rem, 2rem);
Tailwind 类
text-[clamp(1rem,1.5023vw_+_0.6479rem,2rem)]
768px 宽 → 21.9px
Aa 22px

不同视口下的渲染尺寸

375px 宽Aa 16px
908px 宽Aa 24px
1440px 宽Aa 32px

clamp(min, preferred, max) 根据视口流畅地缩放数值,并在最小值和最大值处锁定。它用一行代码取代了针对排版、间距和宽度的多个媒体查询。

常见用途

  • 创建流体响应式排版使用一行在移动和桌面之间平稳缩放字体大小。
  • 流体边距和填充使部分间距随视口增长而不是在断点处跳跃。
  • 用clamp()替换媒体查询将断点覆盖堆栈折叠为单个流体值。
  • 构建流体类型量表为设计系统类型量表生成一致的clamp()步骤。
  • 流体英雄和显示标题使大型落地页标题戏剧性地但安全地缩放。

工作原理

此工具使用手写的线性插值公式计算 CSS clamp() 值——没有库、没有服务器往返。你输入两个尺寸和两个视口宽度;计算在浏览器中即时完成,生成一个可直接粘贴的 clamp() 表达式,其中基于 vw 的首选值会让字号或间距在这两个断点之间平滑缩放。

  1. 1
    线性斜率计算
    工具计算每像素的斜率:(maxSize - minSize) / (maxViewport - minViewport)。然后将此斜率乘以 100 转换为 vw 单位,这正是 CSS 视口相对缩放的核心原理。
  2. 2
    推导截距
    计算一个截距偏移(px 或 rem),使线性函数在最小视口处恰好等于你的最小尺寸。斜率和截距共同构成 clamp() 中的首选值——也就是实际缩放的部分。
  3. 3
    单位换算与输出格式化
    如果选择 rem 输出,每个像素值都会先除以你设置的根字号(默认 16px),再写入 clamp() 字符串。同时还会生成对应的 Tailwind 任意值类,按 Tailwind 语法将空格替换为下划线。
  4. 4
    实时视口滑块预览
    范围滑块可以在 320px 到 1920px 宽度之间拖动。在每个位置,同样的斜率和截距公式会实时计算限定后的尺寸,并以该像素大小渲染示例文本,让你在复制之前就能看到缩放效果。

相关工具

常见问题