我刚刚了解了一个新的、不同寻常的CSS单元.vhvw分别测量视口的高度和宽度百分比.

我在Stack Overflow中查看了这个问题,但它使单元看起来更相似.

How does vw and vh unit works

答案明确地说

vw和vh是窗宽和窗高的百分比,

这看起来和%台完全一样,后者更常见.

在开发人员工具中,我try 将值从vw/vh更改为%,反之亦然,得到了相同的结果.

两者之间有区别吗?如果没有,为什么这些新单元被引入CSS3个?

推荐答案

100%可以是任何物体高度的100%.例如,如果我有一个1000px高的父对象div和一个100%高的子对象div,那么从理论上讲,子对象div可能比视口的高度高很多,或者比视口的高度even though that 102 is set at 100 height小很多.

如果我将子div设置为100vh,那么它将是only fill up 102 of the height of the viewport,而不一定是父div.

body,
html {
    height: 100%;
}

.parent {
    background: lightblue;
    float: left;
    height: 200px;
    padding: 10px;
    width: 50px;
}

.child {
    background: pink;
    height: 100%;
    width: 100%;
}

.viewport-height {
    background: gray;
    float: right;
    height: 100vh;
    width: 50px;
}
<div class="parent">
    <div class="child">
        100% height
        (parent is 200px)
    </div>
</div>

<div class="viewport-height">
    100vh height
</div>

Css相关问答推荐

在NextJS/Reaction应用程序中显示更新问题

如何使用CSS滚动驱动动画重复时间轴范围

如何在使用 bslib 5 的shiny 应用程序中使用样式参数排列 ui 元素

在 CSS 中,如何用破折号填充段落中每一行的空白区域?

背景图像允许溢出输入按钮

具有水平和垂直滚动的表格上的活动 scss 类

.SVG 文件对象在锚标签下可点击

使元素在顶部和中心都有粘性

如何根据 CSS 变量内容做一些事情?

zoom 时闪烁的背景滤镜模糊

子组件的css会影响整个页面

当我在几个月之间更改时,有什么方法可以在react-dates-range上添加淡入淡出或幻灯片效果?

Adobe Illustrator 删除我在 svg 图像上的类名.我怎样才能防止这种情况?

我应该避免使用text-align: justify;吗?

使用 CSS/HTML 更改悬停图像

虚拟键盘激活时的屏幕样式

go 除文本输入的内阴影

仅针对使用的类优化 Font Awesome

CSS垂直对齐不适用于浮动

CSS(webkit):在绝对定位元素上用底部覆盖顶部