vw 和 clamp()

今天看到一个新的响应式方法,记录一下

vw (Viewport Width) 是一个与视口直接关联的单位,1vw 等于视口宽度的 1%。这意味着,元素的尺寸会随着浏览器窗口的拉伸或收缩,进行实时、平滑、无级的缩放。

复制代码
.title {
  /* 字体大小永远是视口宽度的 5% */
  font-size: 5vw;
}

vw 缺陷:缺乏边界 。在超大屏幕上,5vw 的字体会变得巨大无比;在极小的手机屏幕上,它又可能小到无法阅读。

clamp(),动态范围约束

基本语法,clamp(最小值, 首选值, 最大值);这样属性值设置在了一个灵活区 间,既能响应式变化,又不会过大或过小。

css 复制代码
font-size: clamp(14px, 2vw, 20px);
/* 字体最小 14px,最大 20px,在两者之间根据视口宽度自动变化。*/

button {
  padding: clamp(8px, 2vw, 16px) clamp(12px, 3vw, 24px);
}


img {
  width: clamp(200px, 50vw, 600px);
}
相关推荐
JustHappy36 分钟前
「vConsole MCP🛠️」我让 AI 直接看见任何 H5 的日志和请求帮你 debug
前端·javascript·程序员
codeGoogle1 小时前
Vue3 UIKit 实战:把聊天、会话、主题和移动端适配全部封装好
前端
大龄秃头程序员2 小时前
iOS Method Swizzling 的工程化实践:如何处理多重交换与第三方冲突
前端
liangshanbo12152 小时前
Webpack 文件指纹面试题整理
前端·webpack·node.js
xieter2 小时前
【技术精选】Node.js 核心事件循环机制与异步 I/O 深度剖析 (2026-10-02)
前端·javascript
计算机魔术师2 小时前
Ethan Mollick 谈点与群:智能体自组织为何让管理假设失效
前端
故七月3 小时前
GEO 信源评估体系:如何判断一条网页信源能否被大模型采信
前端·网络·人工智能
liangshanbo12153 小时前
Webpack 常见 Plugin 面试题
前端·webpack·node.js
xxwl5853 小时前
vue3的入门学习
前端·vue.js·学习
用户847172102843 小时前
.shot 文件格式规范
前端·后端