仅当内容溢出视口时才粘滞页脚

时间:2015-03-13 17:27:07

标签: html css css3

我希望有一个仅在内容溢出视口时内联的页脚元素,在这种情况下它变为粘性,底部固定。用例是在长数据网格上始终显示一些功能按钮。

我记得多年前用黑客做过这件事,但我忘记了:)我知道可以用Javascript完成但是有更简化的方法只用CSS做到吗?

当内容比视口短

------< viewport top 
header
content
[footer, inline]


------ < viewport bottom

当内容溢出视口

------< viewport top 
header
content
content
content
[footer, sticky]
------ < viewport bottom
content
content
content

1 个答案:

答案 0 :(得分:0)

如何使用max-height和calc?页眉和页脚需要有固定的宽度:

http://codepen.io/jlowcs/pen/OPBGjx

HTML:

<div class="header"></div>
<div class="content">
  content<br>
  [...]
  content<br>
</div>
<div class="footer"></div>

CSS:

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

.header {
  height: 150px;
  background-color: blue;
}
.footer {
  height: 100px;
  background-color: green;
}
.content {
  max-height: calc(100% - 150px - 100px);
  overflow: auto;
}