我有以下HTML标记:
<section class="socialBar">
<div style="width: 50%; height: 100%; border-right: 1px solid black;">
<img src="dislike_32.jpg" alt="Dislike">
<span>1</span>
</div>
<div style="width: 50%; height: 100%;">
<img src="like_32.jpg" alt="Like">
<span>2</span>
</div>
</section>
以下CSS:
section.socialBar > div{
margin: 0px;
padding: 0px;
display: inline-block;
text-align: center;
}
section.socialBar > div > *{
position: relative;
top: 50%;
transform: translateY(-50%);
}
所以基本上,我有一个section
,其中有两个divs
彼此相邻(使用display: inline-block
),每个占section
的一半。现在,在他们内部,我们有一个img
和一个span
。使用我的第二个CSS选择器,图像和跨度应该是垂直居中。但相反,这是我得到的结果:
图像(24px * 24px)似乎正确居中,但两个span
元素却没有。这有什么问题?
答案 0 :(得分:1)
问题是span
标记是内联元素,因此无法居中。我只是将display: inline-block
添加到img
和span
标记中,并且效果非常好。