简单实用 `vmin` 的案例

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您旅程的每个阶段提供云产品。立即开始使用 价值 $200 的免费信用额度!

视窗单位是指诸如 10vw(视窗宽度的 10%)或 2vh(视窗高度的 2%)之类的单位。它们有时很有用,因为它们总是相对于视窗。不受父元素的级联或影响。

还存在 vmin,它是 vw 和 vh 中较小的那个值,以及 vmax,它是较大的那个值。这些值可用于需要长度值的任何属性,就像 px、em、% 或其他单位一样。

让我们看看一个利用 `vmin` 的微型设计模式。

一个标题块!

如果我们像这样设置 `<header>` 的 `padding`

header {
  padding: 10vmin 1rem;
}

我们会在外部获得一些固定填充(1rem),因此例如设置在其中的文本永远不会真正接触到边缘。我们也会得到一个标题,其大小会根据屏幕空间以一种感觉恰当的方式进行调整。

在大型台式机视图中,标题尺寸较大且醒目。
当垂直空间较小时,标题会缩短,以免遮挡内容。
纵向移动视图看起来很平衡。
小屏幕横向视图
超高且狭窄的视图仍然感觉很合适。如果仅考虑视窗高度,那么这种视图就不太合适。

基于两个浏览器窗口维度中的 *最小值* 来调整大小似乎感觉很合适,而不是仅基于宽度或高度。

这是演示。

这里有一个视频