Это тестовое изображение показывает, насколько сильно Safari позиционирует текст внутри блока по сравнению с Firefox (Safari 5.0.5 и Firefox 5.0.1 для Mac OS X 10.6.7). Обратите внимание, как символ «S» для sans-serif
находится в верхней части окна в Firefox, а не в Safari. Разница, кажется, варьируется в зависимости от используемого шрифта, где некоторые даже отображаются последовательно.
Я читал , что люди говорят , что это из-за проблем округления между font-size
и line-height
(и исправлено установкой высоты меньше размера), но я думаю, что это опровергается моим примером, где sans-serif / helvetica в Firefox всегда выравнивает верх в рамке.
Мне кажется, что Safari понимает это более правильно, чем Firefox, то есть текст, как правило, больше в средней линии.
Есть ли хороший способ сделать их более последовательными? Моя цель - только совместимые со стандартами браузеры.
- NB1: Это не имеет ничего общего с
vertical-align
.
- NB2: я исследовал аналогичную проблему в прошлом без какого-либо вполне удовлетворительного результата.
Мой тестовый код: http://jsbin.com/omaboc
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<style type="text/css">
body {
font-size: 50px;
line-height: 1em;
}
div {
background: #b5e260;
margin-bottom: 5px;
}
</style>
</head>
<body>
<div style="font-family: sans-serif">Some text @ this box</div>
<div style="font-family: serif">Some text @ this box</div>
<div style="font-family: arial">Some text @ this box</div>
<div style="font-family: helvetica">Some text @ this box</div>
<div style="font-family: courier">Some text @ this box</div>
<div style="font-family: georgia">Some text @ this box</div>
</body>
</html>