Я отображаю две панели DIV с кодом ниже.Единственное различие между этими двумя панелями заключается в том, что элемент SPAN в первом элементе DIV имеет стиль font-size: 14px
, примененный к нему, в то время как стиль второго элемента DIV не имеет этого стиля.В Firefox и Chrome первая панель имеет большую высоту, чем вторая.Вот демонстрационный URL: 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 я мог видеть, что вычисленная высота элемента P в первом DIV равна 44.1833.px, а у элемента P во втором DIV - 38 пикселей.Почему возникает эта разница?
Если я удаляю свойство line-height: 38px
из CSS, оба элемента DIV имеют одинаковую высоту.Вот страница, которая демонстрирует это: http://jsfiddle.net/FJUDn/