CarstenP: 1. Doctypes metzeln CSS-Formate 2.formatierte Doclinks?

Beitrag lesen

Hallo Alex,

Zunächst eine kleine Korrektur:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
führt auch Netscape den Befehl <a href="#top"> aus, mit
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
ignoriert er ihn jedoch.

Zu meinst nicht

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

sondern

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  "http://www.w3.org/TR/html4/loose.dtd">

Der erste Doctype löst in den Browsern genauso wie Dein HTML-3.2-Doctype den bereits erwähnten "Quirks Mode" aus, der zweite löst den "Standards Mode" aus.

Der "Standards Mode" ist der erstrebenswertere Darstellungsmodus, da die Browser dann halbwegs das tun, was man jahrelang von ihnen gefordert hat, nämlich den Code entsprechend den Standards zu interpretieren. Mozilla (also Dein Netscape 7) legt hier noch deutlich härtere Maßstäbe an als der IE. Wenn Mozilla im "Standards Mode" etwas nicht wie gewünscht anzeigt, dann läßt das nur eine einzige Schlußfolgerung zu:

Dein Code entspricht nicht Deinen Wünschen!

Womit wir bei Deinem Anker-Problem wären: Damit ein Link zu einem Ziel führt, _muß_ es ein entsprechendes Gegenstück geben. Damit also Dein <a href="#top"> zum Ziel führt, _muß_ es ein entsprechendes <a name="top"> oder <irgendwas id="top"> geben. Und im Standards Mode berücksichtigt Mozilla diese Regel. Daß einige Browser intern #top für den Sprung an den Seitenanfang reserviert, ist deren Eigenmächtigkeit, die aber unter keinen Umständen erwartet werden darf. Mir ist mindestens ein Browser bekannt (weitere habe ich noch nicht ausprobiert), der diese intern reservierte Sprungmarke überhaupt nicht kennt, also auch im "Quirks Mode" nicht. Auf gut Deutsch: Ob es Dir gefällt oder nicht, Du mußt so oder so ein Sprungziel definieren, damit der Link nach oben in allen Browsern funktioniert.

Viele Grüße
Carsten