2

我试图让侧边栏填充页眉和脚之间的高度。如您所见,它在页脚后面。我希望它停在页脚的顶部。任何帮助都会很棒!

演示地址:http: //www.jsfiddle.net/pEbhK/

的HTML:

<div class="header">
        <h2>Development Area</h2>
</div>
<div class="sidebar">
        <h2>Current Projects</h2>
    <ul>
        <li>iCalendar</li>
        <li>MyBand - Student Center</li>
    </ul>
        <h2>Future Projects</h2>
    <ul>
        <li>Mobile Application</li>
        <li>RSS Feed</li>
    </ul>
</div>
<div class="clear"></div>
<div class="footer">&copy; 2013</div>

CSS:

html, body, h1, h2 {
    margin:0px;
    padding:0px;
}
.clear {
    clear:both;
}
.header {
    display:inline-block;
    width:100%;
    background:#ABBFF2;
    height:100px;
    border-bottom: 5px solid #7F9DEB;
    text-align:center;
}
.header h2 {
    padding-top:38px;
}
.sidebar {
    position: fixed;
    height:100%;
    width:250px;
    background:#ABBFF2;
    border-right:5px solid #7F9DEB;
    float:left;
}
.sidebar h2 {
    text-align:center;
}
.footer {
    position:fixed;
    display:inline-block;
    bottom:0px;
    width:100%;
    height:30px;
    border-top:5px solid #7f9deb;
    text-align:center;
}
4

3 回答 3

5

试穿height:calc(100% - 140px)_.sidebar

.sidebar {
    position: fixed;
    height:calc(100% - 140px);
    width:250px;
    background:#ABBFF2;
    border-right:5px solid #7F9DEB;
    float:left;
}

更新了 jsFiddle 文件

于 2013-09-04T13:31:52.070 回答
1

执行此操作的非 calc() 方式...

您的侧边栏和有脚有position: fixed,因此它们相对于视口定位。

您可以使用以下 CSS 调整侧边栏的大小:

.sidebar {
    position: fixed;
    top: 105px;
    bottom: 35px;
    left: 0px;
    width:250px;
    background:#ABBFF2;
    border-right:5px solid #7F9DEB;
}

偏移量的值top是标题高度 + 边框的 5px。同样,bottom偏移量是页脚高度 + 5px 的边框。

参见演示:http: //jsfiddle.net/audetwebdesign/Lfpxq/

注意:您可能需要在侧边栏添加最小高度以防止内容溢出问题。calc()我认为使用该方法时会出现同样的问题。

于 2013-09-04T13:48:10.287 回答
-1

或将其写入 css 中的 .footer

background-color: #fff;
于 2013-09-04T13:36:00.287 回答