为什么内联元素的margin-top正在推倒它之后的所有内容

时间:2012-11-02 13:48:49

标签: html css

我有以下标记

<a class="block"><span class="inline">hello</span>world</a>

<a>有一个display:block ...如果我给span.inline一个margin-top:3px它也会在它之后按下文本。这是一个jsfiddle看到这种行为

http://jsfiddle.net/YLMeh/

任何人都可以给我一个暗示,为什么会这样?

2 个答案:

答案 0 :(得分:2)

一行中的所有inline元素共享相同的行高。如果你考虑它就有意义了。如果您有多行文本,会发生什么?这将是完全不可读的。

在这种情况下,vertical-align属性是您必须使用的属性。阅读,你应该没事。

答案 1 :(得分:1)

margin-top: 3px;已应用于您的<span class="inline">按下整个文字的基线。

了解vertical-align css属性可能有所帮助:https://developer.mozilla.org/en-US/docs/CSS/vertical-align