hi,
Man kann zumindest eine praxistaugliche Näherung mit folgender Funktion bestimmen:
Abgesehen davon, dass ich die Funktion für Quark halte - gibt bei mir im IE 5.01 den Wert 19 aus, was bei normaler Schriftgröße für 1ex definitiv viel zu viel sein dürfte - warum so umständlich?
Mein Vorschlag:
function heightInPx(height) {
var div = document.createElement("div");
div.style.height = height;
div.style.overflow = "hidden"; // fuer IE
document.body.appendChild(div);
h = div.offsetHeight;
document.body.removeChild(div);
return h;
}
Damit bekomme ich unter Angabe des Parameters "1ex" 8 heraus, was mir bei meinen Schrifteinstellungen auch sehr viel plausibler erscheint.
Die Methode läßt sich zur Bestimmung der Länge eines em entsprechend abwandeln.
"Messung" für "1em" genauso leicht möglich, wenn du das als Parameter übergibst. Und Herumgehampel mit .innerHTML und Grausligkeiten wie <font> fällt vollkommen weg.
Btw: Für "1em" bekomme ich 16 heraus, also _kann_ der von deiner Funktion ermittelte Wert 19 für 1ex gar nicht stimmen.
gruß,
wahsaga
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }