首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CSS2版本的高度: calc(100% -18 of )

CSS2版本的高度: calc(100% -18 of )
EN

Stack Overflow用户
提问于 2017-10-09 13:54:07
回答 1查看 716关注 0票数 3

如何在height: calc(100% - 18px);中使用CSS2?我在一页上有3 div

代码语言:javascript
复制
<body>
    <div id="top">top</div>
    <div id="middle">middle</div>
    <div id="bottom">bottom</div>
</body>
  • 我希望top是100%的高度减去200px
  • 我要middle200px,就在top下面
  • 我要bottom跟在bottom后面

这样做的想法是,当滚动条位于顶部时,topmiddle占据浏览器窗口的100%,但是用户应该能够向下滚动看到bottom。当用户滚动时,topbottom仍然是相同的大小(除非用户调整窗口大小)。

我想在没有JavaScript的情况下这样做,它需要是CSS2,因为我们还没有兼容CSS3的浏览器。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-09 14:06:29

你可以用负的边距和与box-sizing: border-box一起填充的混合方式来实现这一点。

注意:在下面的示例中,使用了50px而不是200px,因为对于片段输出来说200px有点太大了。您将希望用-50px50px的实例来更改所需的输出的-200px200px

代码语言:javascript
复制
html, body {
  height: 100%;
  margin: 0;
}

#top {
  background: tomato;
  box-sizing: border-box;
  height: 100%;
  margin-bottom: -50px;
  padding-bottom: 50px;
}

#middle {
  background: cornflowerblue;
  height: 50px;
}

#bottom {
  background: papayawhip;
}
代码语言:javascript
复制
<div id="top">top</div>
<div id="middle">middle</div>
<div id="bottom">bottom</div>

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46648169

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档