Thomas Luethi: IE8: Werden Überschiften proportional zur normalen Schrift?

Beitrag lesen

Hallo,

wenn ich im "normalen" Modus vom IE8 eine Seite darstelle, die eine <h5> Überschrift hat(aber keine CSS Angabe dafür), wird diese proportional zur normalen festegelegten Textgrösse gezeigt. Also immer ein wenig kleiner.

Diese Unsitte, Überschriften (H5, H6) kleiner darzustellen als den
eigentlichen Fliesstext, hat leider eine lange Tradition bei den Browsern.
Schon Netscape 4 selig hatte diese leidige Angewohnheit, und die
übrigen Browser haben es nachgeäfft.

Lediglich das nutze ich:
<style type="text/css">
html,body{font-size:12px;}
</style>

D.h. Du definierst nicht spezifisch, wie gross ein H5 dargestellt werden soll.

Für Benutzer mit MS IE bis und mit 6.0 sind übrigens solche
Schriftgrössen-Angaben mit px sehr schlecht, denn diese
armen Leute haben dann keine Chance, die Schriftgrösse
anzupassen.

Angeblich soll doch diese IE-Version sich streng an W3C halten, also muss ich davon ausgehen das Verhalten ist richtig?

Jeder (grafische) Browser, so auch der MS IE 8, hat ein eigenes,
eingebautes "Default"-Stylesheet. Dieses kommt z.B. dann zum Einsatz
wenn sonst nichts definiert ist, z.B. bei reinen HTML-Seiten ohne CSS.

Das ist auch so vorgesehen in der CSS Specification.
Spontan finde ich gerade das hier:
http://www.w3.org/TR/CSS21/cascade.html#cascading-order
  "2. Sort according to importance (normal or important) and origin
     (author, user, or user agent). In ascending order of precendence:
     1. user agent declarations
     2. user normal declarations
     3. author normal declarations
     4. author important declarations
     5. user important declarations "

Zur Erklärung:
1. ist das Default-Stylesheet des Browsers.
2. wären Angaben ohne !important im Stylesheet des Users.
   (Ein solches User-Stylesheet haben wohl nur ein paar Geeks,
    allenfalls noch Menschen mit Sehbehinderungen, keine Ahnung.)
3. sind Angaben ohne !important im Stylesheet, welches Du
   als Autor der Seite machst.
4. sind Angaben mit !important, die Du machst.
5. wären Angaben mit !important im User-Stylesheet

Wenn also z.B. im Default-Stylesheet des Browsers definiert ist,
dass eine H5-Überschrift 0.9em gross sein soll, und sonst nirgends
(weder in "Deinem" Autoren-Stylesheet noch in einem User-Stylesheet)
eine Grössenangabe steht, dann handelt der Browser IMHO "richtig",
d.h. gemäss der Spec., wenn er die H5-Überschrift etwas kleiner als
den übrigen BODY-Text, also mit 0.9*12px = 10.8px darstellt.

Das heisst: Wenn es Dir wichtig ist, wie etwas dargestellt wird,
dann musst Du es explizit im (Autoren-)Stylesheet definieren.
Sonst musst Du damit rechnen, dass das Default-Stylesheet des
Browsers zum Einsatz kommt.

HTH, mfg Thomas