0

这个问题已经被问了很多次,但解决方案似乎对我不起作用。也许是因为我太迟钝了,无法将简单的解决方案应用于我更“复杂”的情况。

我只需要我的页眉 div 下面的内容 div,然后是下面的页脚 div,同时为页眉和页脚 div 使用 100% 的宽度。这是在 WordPress 网站中,因此 div 更有趣。我尝试了各种溢出:隐藏等。我很好地掌握了绝对定位使 div 脱离流程的概念,只是不知道如何解决这种情况。我也尝试将顶部位置应用于内容 div,但这对页脚 div 没有帮助。

任何帮助将不胜感激。如果有另一种方法可以做到这一点,我全神贯注!

请看这个小提琴:http: //jsfiddle.net/M8Wy6/1/

<div id="home-page-wrap">
    <div id="container">
            <div id="header">
                <div class="top-header">
                    <div id="logo">logo</div>
                    <div id="header-nav">header nav</div>
                </div>
                <div id="home-slider">slider</div>
                <div id="main-nav">main nav</div>                
            </div><!-- header -->

            <div id="content">
                 <div class="hentry">
                        <div id="side-bar">the sidebar</div>
                        <div class="entry-home">thecontent</div>
                </div>
                <div class="home-bottom">home bottom</div>
           </div>
           <div id="footer">footer</div>
    </div>
</div>​
body {background:#F2F2F2;}

#home-page-wrap {min-height:100%; height:auto !important; height:100%; width: auto; margin:0 auto; padding:0; background:#F2F2F2;}

#container {width:260px; min-height:100%; height:auto !important; height:100%; margin:0 auto; padding:0 40px; background:#F2F2F2;}

#header {float:left; height:50px; width:100%; left:0; position:absolute; margin:0 auto; padding:0; overflow:visible; background:#FFF;}

.top-header {width:260px; margin:0 auto; height:50px;}

#logo {float:left; position:relative; width:50px; height:25px; margin:0; padding:0; overflow:visible; border:2px solid red;}

#header-nav {float:right; display:block; height:25px; width:50px; padding:0; margin:0; color:#919395; border:2px solid red;}

#home-slider {float:left; width:100%; height:120px; margin:0 auto; background:#404040; border:2px solid red;}

#main-nav { float:left; display:block; width:100%; height:50px; margin:6px auto 6px; padding:0; z-index:100; background:#999; border:2px solid red;}

#content {width:260px; min-height:260px; height:auto !important; height:260px; padding:0; margin:0 auto; background:#F2F2F2; position:absolute; left:0; border:2px solid green;}

.hentry {width:260px; position:relative; margin:0 auto; overflow:hidden;}

.entry-home {float:left; width:100px; min-height:100px;height:auto !important;height:100px; margin:25px 0; padding: 20px 0 0 0;}

#side-bar {float:right; width:50px; min-height:100px; height:auto !important; height:100px; margin:25px; padding:0; background:#F2F2F2;}

#footer {width:100%; height:50px; padding:0; margin:0 auto; background:#666666; position:absolute; left:0; overflow:visible;}

​</p>

4

1 回答 1

4

我只需要我的页眉 div 下面的内容 div,然后是下面的页脚 div,同时为页眉和页脚 div 使用 100% 的宽度。

这是 div 的默认行为:它们将水平扩展以填充其父元素,并垂直扩展以包含其子/内容。因此,您可以通过删除页眉、页脚和内容 div 上的绝对定位、浮动和宽度属性来获得所需的内容。

演示:http: //jsbin.com/ibexuy/1/edit

于 2012-10-16T19:33:25.253 回答