浅谈 CSS 中 vmin 和 vmax

========== 生活化例子 ==========

  1. vmin 的例子 : 假设你用手机(竖屏)浏览网页,屏幕高度比宽度大。使用 5vmin 会取屏幕宽度和高度中较小的那个值(这里是宽度)的 5%。这样字体或元素大小会根据手机宽度调整,确保在小屏幕上不会太大。

  2. vmax 的例子 : 如果你用平板(横屏)浏览网页,屏幕宽度比高度大。使用 5vmax 会取屏幕宽度和高度中较大的那个值(这里是宽度)的 5%。这样元素大小会适应大屏幕的宽度,看起来更协调。

========== 概念讲解 ==========

  1. vmin

    • 定义vmin 是视口(屏幕)宽度和高度中较小值 的百分比单位。1vmin 等于视口宽度或高度中较小一者的 1%。
    • 用途:适合在小屏幕上控制元素大小,避免溢出或过大。
    • 公式vmin = min(视口宽度, 视口高度) × 百分比
  2. vmax

    • 定义vmax 是视口宽度和高度中较大值 的百分比单位。1vmax 等于视口宽度或高度中较大一者的 1%。
    • 用途:适合在大屏幕上保持元素的视觉效果,避免过小。
    • 公式vmax = max(视口宽度, 视口高度) × 百分比

========== 简单记法 ==========

  1. vmin

    • 口诀:"小人取小"("小人"指较小的值)。
    • 记忆法:vmin 的 "min" 就是"最小"的意思,所以它取宽度和高度中的较小值。
  2. vmax

    • 口诀:"大人取大"("大人"指较大的值)。
    • 记忆法:vmax 的 "max" 就是"最大"的意思,所以它取宽度和高度中的较大值。

========== 图示 ==========

以下是一个 SVG 图示,直观展示 vminvmax 的区别:

这个图展示了:

  • 左边是竖屏(高度 > 宽度),vmin 取宽度。
  • 右边是横屏(宽度 > 高度),vmax 取宽度。
相关推荐
再学一点就睡3 小时前
手写 Promise 静态方法:从原理到实现
前端·javascript·面试
再学一点就睡4 小时前
前端必会:Promise 全解析,从原理到实战
前端·javascript·面试
前端工作日常4 小时前
我理解的eslint配置
前端·eslint
前端工作日常5 小时前
项目价值判断的核心标准
前端·程序员
90后的晨仔5 小时前
理解 Vue 的列表渲染:从传统 DOM 到响应式世界的演进
前端·vue.js
OEC小胖胖6 小时前
性能优化(一):时间分片(Time Slicing):让你的应用在高负载下“永不卡顿”的秘密
前端·javascript·性能优化·web
烛阴6 小时前
ABS - Rhomb
前端·webgl
植物系青年6 小时前
10+核心功能点!低代码平台实现不完全指南 🧭(下)
前端·低代码
植物系青年6 小时前
10+核心功能点!低代码平台实现不完全指南 🧭(上)
前端·低代码
桑晒.6 小时前
CSRF漏洞原理及利用
前端·web安全·网络安全·csrf