我有一个奇怪的情况,我的中间div稍微向下.这是一个截图:

HTML:
<div id="footer">
<div class="content">
<div id="info1">
<img src="img/temp.png" alt="About me" />
<h4>About Me</h4>
<p>this is about me section</br>and this is the other line</br>and this is a third line</p>
</div>
<div id="info2">
<h4>Random Photos</h4>
<div id="randomPhotos"></div>
</div>
<div id="info3">
<h3>Follow Me</h3>
<div>
<img src="img/temp.png" alt="facebook" /><a href="#">Facebook</a>
</div>
<div>
<img src="img/temp.png" alt="twitter" /><a href="#">Twitter</a>
</div>
<div>
<img src="img/temp.png" alt="email" /><a href="#">E-mail</a>
</div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS:
#info1, #info2, #info3
{
padding: 10px;
display:inline-block;
}
#info1
{
width:20%;
}
#info1 img
{
margin-right:3px;
width:20px;
height:20px;
background-image:url('../img/glyphicons-halflings.png');
background-repeat:no-repeat;
background-position:-162px 1px;
}
#info1 img, #info1 h4
{
display:inline-block;
}
#info2
{
width:55%;
border-left:1px solid gray;
border-right : 1px solid gray;
}
#info3
{
width:15%;
}
#info3 img
{
width:20px;
height:20px;
margin-right:5px;
}
#info3 img[alt="facebook"]
{
background : url('../img/result.png') no-repeat 0px -30px;
}
#info3 img[alt="twitter"]
{
background : url('../img/result.png') no-repeat 0px -60px;
}
#info3 img[alt="email"]
{
background : url('../img/result.png') no-repeat 0px 0px;
}
#info2 div
{
padding:3px;
}
#randomPhotos
{
height : 100px;
}
Run Code Online (Sandbox Code Playgroud)
我真的不擅长CSS,所以它可能是一个小问题.我只是找不到它.
对于使用的元素,大多数浏览器display:inline-block将自动使用vertical-align:baseline该元素,除非您使用CSS重置(这可能也会将事实标准定义为vertical-align:baseline.)
这就是你所看到的原因,你的每个信息div都与基线对齐.由于中央div的高度较小,因此您可以看到顶部的间隙.
要解决这个问题:
#info1, #info2, #info3
{
padding: 10px;
display:inline-block;
vertical-align:top;
}
Run Code Online (Sandbox Code Playgroud)
您可能遇到的第二个问题是,现在它对齐顶部,底部有一个"间隙",没有左边框或右边框.要么由全高度divs管理边框,要么使所有div具有相同的高度.