浅谈 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 图示,直观展示 vmin 和 vmax 的区别:

这个图展示了:

  • 左边是竖屏(高度 > 宽度),vmin 取宽度。
  • 右边是横屏(宽度 > 高度),vmax 取宽度。
相关推荐
子兮曰4 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰4 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万4 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝4 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋4 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁4 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
汉堡大王95274 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大4 天前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师4 天前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端
沙蒿同学4 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端