我正在尝试在 CSS 中组合一个简单的 3 行布局。它需要:
- 一个主容器 div(100% 宽度,100% 高度),它包含...
- 粘性标题(固定高度为 48px)
- 填充页眉和页脚之间所有剩余空间的中间部分
- 粘性页脚(初始高度为 62 像素,但可以在通过 javascript 加载页面后更改)
这是我到目前为止所得到的:
HTML
<body>
<div id="container">
<div id="headContainer">
...
</div>
<div id="bodyContainer">
Stuff goes here
</div>
<div id="footContainer">
...
</div>
</div>
</body>
CSS
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
body {
background-color:#2c3e50;
}
div#container {
height:100%;
width:100%;
}
div#headContainer {
background-color:#e74c3c;
height:48px;
width:100%;
z-index:1;
}
div#bodyContainer {
overflow:auto;
width:100%;
top:48px;
position:absolute;
background-color:#FFFFFF;
}
div#footContainer {
background-color:#c0392b;
width:100%;
position:absolute;
bottom:0;
padding:11px 18px;
box-sizing:border-box;
-moz-box-sizing:border-box; /* Firefox */
-webkit-box-sizing:border-box; /* Safari */
}
我正在努力弄清楚如何让“bodyContainer”填充页眉和页脚之间的可用空间。如果页脚是固定大小的,这会容易得多!
有小费吗?