Align the inline-block DIV element to the top of the container element
P粉682987577
P粉682987577 2023-08-21 20:17:02
0
2
375
<p>When two <code>inline-block</code>'s <code>div</code> have different heights, why doesn't the shorter one align with the top of the container? (<strong>DEMO</strong>): </p> <p><br /></p> <pre class="brush:css;toolbar:false;">.container { border: 1px black solid; width: 320px; height: 120px; } .small { display: inline-block; width: 40%; height: 30%; border: 1px black solid; background: aliceblue; } .big { display: inline-block; border: 1px black solid; width: 40%; height: 50%; background: beige; }</pre> <pre class="brush:html;toolbar:false;"><div class="container"> <div class="small"></div> <div class="big"></div> </div></pre> <p><br /></p> <p>How do I align a small <code>div</code> to the top of its container? </p>
P粉682987577
P粉682987577

reply all(2)
P粉786432579

You need to add the vertical-align attribute to both child divs.

If .small is always shorter, just apply this property to .small. However, this property should be applied to .small and .big if either one is likely to be the highest.

.container{ 
    border: 1px black solid;
    width: 320px;
    height: 120px;    
}

.small{
    display: inline-block;
    width: 40%;
    height: 30%;
    border: 1px black solid;
    background: aliceblue; 
    vertical-align: top;   
}

.big {
    display: inline-block;
    border: 1px black solid;
    width: 40%;
    height: 50%;
    background: beige; 
    vertical-align: top;   
}

Vertical alignment affects in-row or table cell boxes, and this property has many different values. See https://developer.mozilla.org/en-US/docs/Web/CSS/vertical-align for more details.

P粉744831602

Because by default, vertical-align is set to baseline.

Use vertical-align:top instead:

.small{
    display: inline-block;
    width: 40%;
    height: 30%;
    border: 1px black solid;
    background: aliceblue;   
    vertical-align:top; /* <---- this */
}

http://jsfiddle.net/Lighty_46/RHM5L/9/

Or as @f00644 said, you can also apply float to child elements.

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template