Moin!
Zitat aus Quellcode:
| font-size:0.83em;
Weißt Du, dass das bei mit gerade mal 11 Pixel groß ist? Das ist *definitiv* zu klein. Ich habe bei mir als Standardschriftgröße 13 Pixel eingestellt, weil ich diese Schriftgröße noch sehr gut lesen kann und ästhetisch finde. Dein 0.83em bewirkt dann, dass das ganze so klein wird bei mir. ~0.8em sind OK, wenn es sich um einen "herunvorgehobenen" Text handelt, also Bsp. ein Copyright-Vermerk. Aber für Fließtext ist das mir viel zu klein.
Ich stimme dir vollkommen zu.
em ist eine relative Größeneinheit. Und das Problem ist die Klärung der Frage: "Relativ zu was?"
Das W3C gibt hierüber ja zum Glück Auskunft: http://www.w3.org/TR/CSS2/syndata.html#length-units
em bezieht sich mit einer Ausnahme immer auf die errechnete font-size des Elements, für das es angewendet wird. Die eine Ausnahme ist font-size selbst - da gilt dann die font-size des Elternelements als Bezugsgröße.
Nun gibt es leider nicht beliebig viele Elternelemente - irgendwann ist man mal bei <html> angekommen. Aber welche Größe gilt hier?
Sofern man keine Definition abgibt, gilt die vom Benutzer eingestellte Schriftgröße. Das führt in der Folge dazu, dass "1em" exakt für die vom Benutzer definierte Schriftgröße steht.
Wer das nicht toll findet, dem steht es frei, eine andere Schriftgröße zu definieren. Aber bitte nicht mit "em", sondern mit Pixeln. Das ist auch eine relative Schriftgrößenangabe, die die Auflösung des Wiedergabemediums mit einbezieht. Ein Pixel entspricht einem Sichtwinkel von 0,0227 Grad - dieser Winkel führt bei einem nahen Computerdisplay beispielsweise zu einer realen Pixelabmessung von 0,3 Millimetern Länge, und bei einem Megascreen in 30 Metern Entfernung zu einer Pixelgröße von 12 Millimetern. Wie das Display hinkriegt, diese Pixelgröße anzuzeigen, ist ihm überlassen.
Da das Auge ohnehin nur eine Auflösungsfähigkeit von 0,01 Grad hat, also gerade einmal doppelt soviele Punkte wahrnehmen könnte, ist der Ansatz, für die Pixelgröße einen Winkel zu nehmen, der sich ungefähr in der Größenordnung der menschlichen Augenfähigkeit bewegt, sinnvoll.
Und nun kommt die Realität (in Form eines Browsers) und sagt: Pixel? Kenn ich nicht, will ich nicht, ignorier' ich alles relative dran, ich setze nur Bildpunkte in der Grafikkarte, und fertig. Und das Schema vom W3C wird trotzdem funktionieren, weil es von einer durchschnittlichen Auflösung von 90 dpi auf einem Computerbildschirm ausgeht. Windows hat standardmäßig 96 dpi eingestellt, und auf dem Mac kompensieren Browser die dort eingestellten 72 dpi mittlerweile.
Mit anderen Worten: Selbst wenn der dumme allgemeine Benutzer nichts einstellt, kriegt er mit Pixeln etwas, was vom Konzept her überall gleich groß aussehen sollte und in der Realität zumindest ungefähr diesen Anspruch schon erfüllt.
Als Seitenautor hat man also genau eine Entscheidung zu treffen: _Entweder_ glaubt man, dass alle Benutzer eines Browsers es hingekriegt haben, eine ihnen genehme Schriftgröße einzustellen. Dann ist jegliche Aussage des Designers "1 em ist für mich zu groß, ich brauche 0.8 em" bedeutungslos, denn durch den Verzicht auf die Angabe einer (mehr oder weniger) absoluten Größe hat er dokumentiert, dass er gerade _keinen_ Anspruch auf eine bestimmte Darstellungsgröße erhebt, sondern nur die Relationen der Schriftgrößen untereinander definiert.
_Oder_ man setzt die Schriftgröße fest, von der aus man relativ weitere Größen definiert.
Ich konnte in den Dokumentationen aber keinen Abschnitt finden, der definiert: "If no absolute or pixel dimension is given in the stylesheet, the user agent should render 1 em with the size of 1.2 times the initial value of font-size. This is because web designers like to define 0.8 em for otherwise undefined font sizes, which may be rendered too small for the average user if this special ruleset would not apply."
- Sven Rautenberg
--
"Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
(fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)