div里面的包装div没有对齐底部

时间:2012-04-27 22:18:30

标签: css vertical-alignment margins

我很难解决这个问题,但这一定很简单......

我的页面上有一个包含其他div元素的div包装器。所有内容均使用margin-top中的px进行对齐;但最后一个(页脚)我需要它margin-bottom:0px,所以它显示在包装器的底部,但是不起作用:页脚始终显示在页面顶部。

我在这里找到了其他对齐问题,尝试将position: absolute提供给页脚,将position:relative提供给包装器;没工作我尝试使用%高度和最小高度......但仍然是顶部的页脚

我对此感到有些沮丧:(

CSS:

body {
    margin: 0px;
    background-repeat: repeat;
    background-image: url(images/modulo-pattern-grey-light.gif);
}
#body-quienes {
    height: 800px;
}
#pagina {
    height: 720px;
    margin: 0 auto;
    background: #fff url(images/footer.gif) left bottom no-repeat;
    width: 980px;
    box-shadow: 4px 4px 5px #999;
}

.header {
    position: absolute;
    margin-top: 0px;
    margin-bottom: 0 px;
    margin-right: auto;
    margin-left: auto;
    height: 70px;
    width: 980px;
    margin: 0px;
    background-image: url(images/header.gif);
}

.menu_container{
    position: absolute;
    float: left;
    width: 270px;
    margin-top: 220px;  
}
.main_menu ul { 
    padding: 0px; 
    margin:0px;
    list-style-type: none;  
}
.main_menu ul li {
    font-family:Arial, Helvetica, sans-serif; 
    text-transform: uppercase;
    font-size:11px; 
    letter-spacing:4px;
    text-align:right; 
    line-height:35px;  
    list-style-type:none;
}
.main_menu ul li a  {
    padding-right: 25px;  
    text-decoration:none;  
    color:#999;
    display: inline-block;  
} 
.main_menu ul li a.selected {
    color: #bc4c9b;
    font-weight:bold; 
    background: url(images/circle.gif) right center no-repeat;
}   
.main_menu ul li a:hover {
    text-decoration:none;  
    color:#999;  
    font-weight:bold;  
    background:url(images/circle_grey.gif) right center no-repeat;
}  

.quienes_pic{
    position: absolute;
    height: 259px;
    width: 174px;
    margin-left: 306px;
    margin-top: 230px;
    background-image: url(images/san.jpg);
}
.quienes_text{
    position: absolute;
    padding-left: 25px;
    border-left: 2px dotted #ccc;
    width: 395px;
    height: 360px;
    margin-left: 510px;
    margin-top: 230px;
    font-family:Arial, Helvetica, sans-serif; 
    font-size:12px;
    color: #bc4c9b;
    line-height:20px;
    content-left-padding: 25px; 
}
.footer {
    position:absolute;
    margin-bottom: 0px;
    margin-left: 490px;
    width: 460px;
    height: 98px;
    margin-right: 30px;
    background-color: #bc4c9b;
 }

HTML:

<body id="body-quienes">
    <div id="pagina">
        <div class="header"></div>
        <div class="logo"></div>
        <div class="flashanim"></div>
        <div class="menu_container">
            <div class="main_menu">  
                <ul>  
                    <li><a href="index.html">Home</a></li>  
                    <li><a class="selected" >Quiénes Somos</a></li>  
                    <li><a href="consultoria.html">Consultoría</a></li>  
                    <li><a href="capacitacion.html">Capacitación</a></li>  
                    <li><a href="academico.html">Académico / Artículos</a></li>  
                    <li><a href="alianzas.html">Alianzas</a></li> 
                    <li><a href="proyectos.html">Proyectos</a></li>  
                    <li><a href="contacto.html">Contacto</a></li>   
                </ul>  
            </div> 
        </div>
        <div class="quienes_pic"></div>
        <div class="quienes_text">Main Text</div>
        <div class="footer"></div>
    </div>​

2 个答案:

答案 0 :(得分:0)

检查this fiddle。它仍然没有在我的脑海中正确显示,但我认为这是因为我不太确定你想要的设计,但我在小提琴中所做的事情将你的粉红色页脚放在页面的底部。

我做的是我从pagina <div>中取出页脚并将其放在它下面,瞧,页脚位于页面底部。如果这对您有用或者您需要不同的东西,请告诉我。

答案 1 :(得分:0)

正如有人已经问过,为什么你的div的大部分绝对定位。阅读有关不同类型的定位,它们的作用以及何时应该使用它们。

看到你的页脚是绝对定位的,我认为你需要将以下代码添加到你的css中的页脚部分。

bottom: 0px;

试一试。

但是建议的话,不要使用绝对定位和保证金左边来将你的div与中心对齐。为此,您需要使用:

margin: 0 auto;