Итак, link и link дают подсказки о том, как шрифты зависят от реализации. Этот вопрос очень специфичен c к размеру шрифта в следующем случае:
размер шрифта: 50px; займет дополнительное пространство для рендеринга (60px в моем случае)
div {
height: 50px;
font-size: 50px;
background: green;
}
span {
background: red;
}
.lineheight {
line-height: 50px;
}
<p>Green is 50px, Red is not</p>
<div><span>fg</span></div>
<p>You can still see the overflow without span:</p>
<div>jAaMgÁ</div>
<p>line-height does not solve the issue (just makes it prettier)</p>
<div class="lineheight"><span>jAaMgÁ</span></div>
- То, что я ожидаю, произойдет: восходящий и нисходящий в em квадрате
- То, что я получаю: спуск ничья вне em square.
- Из документации ссылка : "Размер шрифта соответствует em квадрату"
- Из этой ссылки квадрат em должен включать и по убыванию, и по возрастанию:

Так почему браузер делает что-то еще? Я пробовал Firefox и Chrome, и оба, похоже, соответствовали этому (мисс?) Поведению ... спецификация изменилась? если это так, Каков подходящий способ сообщить браузеру высоту шрифта, включая нисходящее и восходящее?
(ширину можно игнорировать, и вы можете использовать до CSS4, но CSS3 ценится)