首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >空内嵌块元素的垂直对齐

问空内嵌块元素的垂直对齐
EN

Stack Overflow用户
提问于 2009-12-11 12:59:56
回答 4查看 3.8K关注 0票数 8

考虑以下html/css:

代码语言:javascript
复制
<style>
span
{
  display:inline-block;
  width:5em;
  height:5em;
  padding:1em;
}
</style>

a
<span style="background-color:blue;">b</span>
<span style="background-color:green;"></span>
<span style="background-color:red;">c</span>
d

蓝色和红色方框加上方框内部和周围的文本水平对齐。空的绿色框不显示;它显示在其他两个框的上方。如果我向绿色框中添加一些文本,此行为将停止,所有内容将按我希望的方式排列。

这种情况在IE8 (标准模式)、FireFox 3.0和Chrome中都会发生,所以我假设有一些我不理解的空内嵌块元素的属性。

我可以通过指定一个垂直对齐属性来使框对齐,但是这样四个文本值就不再对齐了。有什么想法吗?我被这个问题难住了。

EN

回答 4

Stack Overflow用户

发布于 2009-12-11 15:04:57

给跨度顶部对齐,然后负边距等于您的填充,并且您不需要不间断的空格。

代码语言:javascript
复制
span
{
    display:inline-block;
    width:5em;
    height:5em;
    padding:1em;
    vertical-align:top;
    margin-top: -1em;
}



a
    <span style="background-color:blue;">b</span>
    <span style="background-color:green;"></span>
    <span style="background-color:red;">c</span>
d
票数 8
EN

Stack Overflow用户

发布于 2009-12-11 13:02:51

尝试在绿色跨度内添加&nbsp;。

票数 0
EN

Stack Overflow用户

发布于 2009-12-11 13:03:57

代码语言:javascript
复制
a
<span style="background-color:blue;">b</span>
<span style="background-color:green;">&nbsp;</span>
<span style="background-color:red;">c</span>
d
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1885873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档