我正在设计一个带有水平滚动条的页面布局。
我有一些面板以水平顺序具有固定的宽度,这些面板应该具有视口高度。我决定尝试使用vh
单位来实现。
.panel { height: 100vh; }
这很好用,直到出现滚动条。问题在于,vh
忽略了滚动条使用的高度,因此添加了一个垂直滚动条。
我想从vh
的尺寸中减去滚动条的高度;有什么方法可以做到这一点吗?
我正在设计一个带有水平滚动条的页面布局。
我有一些面板以水平顺序具有固定的宽度,这些面板应该具有视口高度。我决定尝试使用vh
单位来实现。
.panel { height: 100vh; }
这很好用,直到出现滚动条。问题在于,vh
忽略了滚动条使用的高度,因此添加了一个垂直滚动条。
我想从vh
的尺寸中减去滚动条的高度;有什么方法可以做到这一点吗?
<div id="main">
<div id="container"></div>
</div>
CSS
#main {
width:200vw;
height:100%;
background: red;
position: absolute;
overflow-y: hidden;
}
#container {
height: 100vh;
width:10px;
background: blue;
}
.panel { height: calc(100vh-17px); }
这样怎么样?我不知道滚动条有多大,也不确定这是否与浏览器/操作系统有关。 - kleinfreundoverflow-x:scroll;
,这将从视口高度中减去滚动条的高度。水平方向也可以这样做,但是目前这种方法仅在Firefox中得到支持,这是一个严重的问题。 - Matt Kieran