是否可以仅使用css将div的高度设置为容器减去另一个div的高度?

罗兰多

假设我在底部有一个粘性页脚div,其ID为“ #footer”,高度为:500px,它浮在所有内容之上。

我有一个div,“ id为#remaining”,我想占用其余页面的整个高度(但我不想“走到”粘性页脚下。CSS3中是否有一种方法可以沿线做一些事情的:

#remaining {
height:100% - heightOf(#footer) // pseudocode
}

希望我能避免任何JavaScript(如果有的话)。

史考特

这里有一个例子,使用calc()CSS变量(一个实验性功能)来完成你在找什么:

<!DOCTYPE html>
<html>
<head>

<style>
html {
  box-sizing: border-box;
}
*, *:before, *:after {
  box-sizing: inherit;
}

html, body {
  padding: 0;
  margin: 0;
  height: 100%;
}

:root {
  --footer-height: 150px;
}

.body {
  height: calc( 100% - var(--footer-height));
  border: 1px solid black;
}
.footer {
  height: var(--footer-height);
  border: 1px solid black;
}
</style>

</head>
<body>
  <div class="body"></div>
  <div class="footer"></div>
</body>
</html>

我们创建一个名为的变量--footer-height,并使用它来设置高度.footer

.footer {
  height: var(--footer-height);

然后calc我们使用--footer-height设置高度.body

.body {
  height: calc( 100% - var(--footer-height));

box-sizing: border-box允许我们添加边框而不会将div的高度增加到屏幕的100%以上(此处有更多信息

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将div高度设置为另一个div的高度

如何将div的最小高度设置为另一个div的高度?

jQuery将div的高度设置为另一个的“动态高度”

如何将div元素的高度设置为与另一个div相同

页脚div在高度为100%的另一个div下并使用CSS滚动

在angularjs中将一个div的高度设置为另一个div

将父div高度和另一个子div的高度扩展为更大的子div的高度

设置div的高度等于另一个div

如何将一个 div flex 元素的高度设置为与另一个相同?

使用jQuery将div的高度设置为下一个兄弟div的高度

如何将div设置为嵌套在另一个div内,以及如何使用自动调整的高度和重量填充父div

使div仅使用CSS填充另一个div剩余页面的所有高度

CSS-将div的高度一直降低到另一个div

使用JS设置div的高度以匹配另一个div的底部位置

如何使用sass / css将div的宽度设置为等于另一个div?

根据另一个div的高度设置div的高度

如何将div的高度与另一个div的透视高度匹配?

Bootstrap 4+-垂直+水平对齐另一个div内的两个div,高度设置为

角度模板参考:将一个div的高度绑定到另一个div的高度

根据另一个 div 的高度定位 div

当高度为百分比时,将div放在另一个div的中间

将透明div层放在高度为100%的另一个div层上方(带有页脚!)?

使用JQuery将一个元素的边距顶部设置为另一个元素的高度

使一个div最小高度等于另一个div高度加px

动态设置与另一个 DIV 相关的 DIV 高度

如何将一个元素的高度设置为另一个元素的计算高度?

通过CSS根据另一个div调整div的高度

根据另一个 Div 保持高度

可以找到一个div的高度并应用于另一个div的最高位置