2009-05-21 7 views
0

Verwirrt darüber, wie der Browser - jeder Browser - weil es in allem passiert, geht über die Berechnung von emspace und enspace. Hier ist, was passiert: Ich verwende eine freie Schriftart namens Gentium. Schriftgröße ist 16px Zeilenhöhe ist 19pxWarum bricht emspace oder enspace die CSS-Font-Zeilenhöhe im HTML?

Alles sieht gut aus. Nicht brechende Räume - & nbsp; kein Problem - das existiert in der Schriftart als Zeichen. thinspace & thinsp; funktioniert auch OK. Wenn ich versuche zu verwenden: & ensp; (# 8194) oder & emsp; (# 8195)

Der Browser erstellt zwar einen Platz in der richtigen Breite, aber es scheint auch eine Höhe zu sein, und die gesamte Textzeile wird trotz der CSS-Zeilenhöhenregel nach unten geschoben. Weiß jemand was los ist? Zeichen # 8194 und # 8195 werden normalerweise nicht als Teil der Schriftartdatei enthalten. Wie berechnet der Browser das? (Normalerweise funktioniert es gut.) Wo zieht es das Zeichen aus, wenn es aus der Schriftart-Datei fehlt?

Danke.

Antwort

3

Für den Browser ist es sicher nur ein anderes Zeichen ... und aus einer Schriftartdatei gezogen ... die offensichtlich nicht die gleichen Metriken (z. B. Zeilenhöhe) wie Ihre Gentium Schriftart hat.