如何在div中对齐2 div?

时间:2014-10-01 22:53:51

标签: html css header

我有这个JSFiddle:Click here

<div id="header-parent">
    <div id=header>     
            <div id=header-title><img src="${pageContext.request.contextPath}/icon/pizza2.png"><span>this is a title</span></div>
            <div id=header-cart><div id="cart-title">
                                    <div><span>0</span></div>
                                    <div><span>pizza cart</span></div>
                                </div>
                                <div id="cart-icon"><img src="${pageContext.request.contextPath}/icon/shopping-cart.PNG"></div>
            </div>
    </div>
</div>

如果你转到那个页面,你会看到正确的div实际上是在标题本身下对齐。

如何将正确的div设置在标题内?

2 个答案:

答案 0 :(得分:2)

float始终浮动在下一个元素之上。因此,请将header-cart放在cart-title之前。

Updated JsFiddle

Obs:我没有修复小提琴,你必须做一些严肃的调整。你没有引用ids等等......

答案 1 :(得分:0)

http://jsfiddle.net/usnmLuy5/3/

使用display:block-inline来防止块使用100%宽度。在推车上使用浮球,并设置标题的高度,以便推车适合。拼写检查高度,CSS中有一个高度被忽略而且不需要。

#header-parent {
    padding-top:5px;
    padding-bottom:5px;
    border-bottom: 1px solid White;
    background: #45484d; /* Old browsers */
    background: -moz-linear-gradient(top, #45484d 43%, #000000 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(43%,#45484d), color-stop(100%,#000000)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #45484d 43%,#000000 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #45484d 43%,#000000 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #45484d 43%,#000000 100%); /* IE10+ */
    background: linear-gradient(to bottom, #45484d 43%,#000000 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#45484d', endColorstr='#000000',GradientType=0 ); /* IE6-9 */
}

#header {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    cursor: pointer;
    height: 36px; /* same as cart */
}

 #header-child{
    padding:5px 0 5px 0;
    display:inline-block;
}
#header-title {
    display:inline-block;
}
#header-title img{
    width: 25px;
    heigth: 25px;
    margin-right:5px;
    vertical-align: middle;
}

 #header-cart{
    display: inline-block;
    text-align:center;
    background-color:red;
    float:right;
    color:white;
    font-size: 15px;
}

 #header-cart img{
    width: 30px;
    heigth: 30px;
}

 #header-cart #cart-icon{
    float:left;
}
 #header-cart #cart-title{
    float:left;
}

 #header-cart #header-title{
    display: inline-block;
     background-color:blue;
}

#header-title span{

    color: white;
    font-family: Georgia, Times, "Times New Roman", serif;
    font-size:20px;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
}