关键信息
- 分类
- 设计与颜色
- 输入类型
- number, text
- 输出类型
- json
- 样本覆盖
- 4
- 支持 API
- Yes
概览
本工具是专为前端开发者和网页设计师打造的 CSS 流体排版 Clamp 计算器。只需输入最小与最大视口宽度、最小与最大字号以及根字号,即可自动计算出精确的斜率与截距,并生成可直接复制的 CSS clamp() 表达式,帮助您轻松实现无缝响应式的字体缩放效果。
适用场景
- •需要在移动端到桌面端之间实现字体大小平滑过渡,避免编写繁琐的媒体查询时。
- •构建响应式设计系统,需要根据视口宽度动态调整标题或正文字号时。
- •需要快速计算 CSS clamp() 函数中的首选值(包含 vw 和 rem/px 的混合表达式)时。
工作原理
- •输入目标设计的最小视口宽度与最大视口宽度(单位为像素)。
- •设定对应的最小字号与最大字号,并指定当前项目的根字号(默认为 16px)。
- •系统根据线性插值公式自动计算出视口变化时的斜率与截距,并输出以 rem 和 vw 为单位的 clamp() 表达式。
使用场景
用户案例
1. 移动端到桌面端标题流体化
前端开发工程师- 背景原因
- 正在开发一个响应式企业官网,需要让主标题(H1)在 360px 视口下为 24px,在 1440px 视口下平滑放大到 48px。
- 解决问题
- 手写媒体查询会导致代码冗长,且字号变化有突变感,不够平滑。
- 如何使用
- 在计算器中输入最小视口 360,最大视口 1440,最小字号 24,最大字号 48,根字号保持 16。
- 示例配置
-
minViewportPx: 360, maxViewportPx: 1440, minFontPx: 24, maxFontPx: 48, rootFontPx: 16 - 效果
- 获得 clamp(1.5rem, 1rem + 2.2222vw, 3rem) 表达式,直接应用于 H1 样式中,实现无缝平滑缩放。
2. 适配平板与大屏的正文字体微调
UI 设计师兼前端- 背景原因
- 需要为博客文章的正文设置流体字号,在 768px 视口下为 16px,在 1920px 视口下为 20px。
- 解决问题
- 需要精确计算出符合比例的 vw 斜率,避免在大屏上文字过大或在平板上文字过小。
- 如何使用
- 输入最小视口 768,最大视口 1920,最小字号 16,最大字号 20,根字号 16。
- 示例配置
-
minViewportPx: 768, maxViewportPx: 1920, minFontPx: 16, maxFontPx: 20, rootFontPx: 16 - 效果
- 生成 clamp(1rem, 0.8333rem + 0.3472vw, 1.25rem),确保正文在各种中大屏幕设备上都具备极佳的可读性。
用 Samples 测试
text相关专题
常见问题
什么是 CSS clamp() 函数?
clamp() 函数接收三个参数:最小值、首选值和最大值。它允许属性值在设定的范围内随着视口大小动态变化,超出范围时则锁定在最值。
为什么要使用 rem 和 vw 混合作为首选值?
混合使用 rem 和 vw 可以确保在视口缩放时字体平滑过渡,同时保留用户在浏览器中手动调整默认字号的可访问性。
根字号(Root Font Size)有什么作用?
根字号用于将输入的像素值(px)转换为相对单位(rem),通常浏览器的默认根字号为 16px。
这个计算器支持计算除字体大小以外的属性吗?
支持。虽然主要用于流体排版,但生成的 clamp() 表达式同样适用于 padding、margin 等任何支持长度单位的 CSS 属性。
如果视口超出最大或最小范围,字号会怎样变化?
当视口小于最小视口时,字号将固定为设定的最小值;当视口大于最大视口时,字号将固定为设定的最大值。