假设我在底部有一个粘性页脚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] 删除。
我来说两句