我正在显示两个DIV面板,代码如下。两个面板之间的唯一区别是第一个DIV元素中的SPAN元素具有 font-size: 14px
应用于它的样式,而第二个DIV元素的样式不具有此样式。在Firefox和Chrome上,第一个面板的高度似乎高于第二个面板。这是一个演示网址: http://jsfiddle.net/UWX2u/
代码的副本如下:
<!DOCTYPE html>
<html>
<head>
<title>Margin border</title>
<style type="text/css">
body {
line-height: 38px;
font-size: 32px;
}
#panel1 {
background: #00a000;
float: left;
}
#panel2 {
background: orange;
float: left;
}
#panel1 p span {
font-size: 14px;
}
</style>
</head>
<body>
<div id="panel1">
<p>Foo <span>Bar</span></p>
</div>
<div id="panel2">
<p>Foo <span>Bar</span></p>
</div>
</body>
</html>
使用Firebug,我可以看到第一个DIV中P元素的计算高度是44.1833px,而第二个DIV中P元素的计算高度是38px。为什么会出现这种差异?
如果我删除了 line-height: 38px
来自CSS的属性,两个DIV元素具有相同的高度。这是一个演示这个的页面: http://jsfiddle.net/FJUDn/