input-Textfeld soll so breit sein wie die maximale Zeichenzahl
bearbeitet von
Hallo Linuchs,
> Nun könnte man annehmen, dass ein Zeichen 1em breit ist.
Bei Stackoverflow schreibt jemand: "In traditional typography, the space taken up by a capital letter M and the mandatory whitespace around it is always a square."
Computerfonts folgen keiner traditionellel Typographie. Die M-Box ist höher als breit. Und die font-size gibt die Zeichenhöhe an. Wenn Du also einen 16px Font eingestellt hast, ist die EM-Box 16px hoch. Die Breite variiert mit dem genutzten Font. Und dass die EM-Box 16px hoch ist, heißt nicht, dass die Großbuchstaben 16px hoch sind. Normalerweise sind sie niedriger, damit noch Platz für Akzentzeichen ist: É. Im Übrigen ist die EM-Box für einen Font das gleiche wie eine rote Ampel für einen Kölner Fußgänger: eine nette Empfehlung, aber nichts, wovon man sich beeindrucken lassen muss.
Die einzige Garantie, die Du bei einem Monospace-Font hast (hm, haben solltest), ist, dass die Glyphen dicktengleich sind. Aber eine garantierte Relation von Dickte zu font-size hast Du nicht.
Da hilft nur ausmessen, und zwar im Browser des Users, per JavaScript. Du weißt ja nicht, welcher Font dort zum Zuge kommt.
_Rolf_
--
sumpsi - posui - obstruxi