Gunnar Bittersmann: <a name="xyz"> nicht mehr erlaubt, <a> (ohne href) erlaubt?

Beitrag lesen

@@Friedel

nur um sicher zu gehen: Ich habe gerade auf https://wiki.selfhtml.org/wiki/Referenz:HTML/a gelesen

Um sicher zu gehen hilft nur ein Blick in die Spezifikation; nicht in Quellen, die diese mehr oder weniger richtig wiedergeben.

dass man a jetzt ohne href verwenden darf. Oder habe ich das falsch verstanden? in Html4 musst man ja immer <a href=""> schreiben, um einen Dummy-Link zu erzeugen.

Nein. HTML 4 erlaubte <a href=""> und <a name="">. HTML 4 war durch eine Grammatik in Form einer DTD definiert. Da gab es die Möglichkeit zu sagen, dass ein Attribut Pflicht oder optional ist. Es gab aber keine Möglichkeit zu sagen, dass entweder das eine oder das andere Attribut gesetzt sein muss. Folglich war <a> ohne Attribut in HTML 4 erlaubt.

Und <a> ist was ganz anderes als <a href="">: erstes ist kein Link, zweites ist ein Link zur aktuellen Seite.

Außerdem steht da und auch auf https://wiki.selfhtml.org/wiki/Name auch, dass das name-Attribut in Links nicht mehr erlaubt ist.

Das halte ich für einen Fehler im Wiki. Um sicher zu gehen hilft nur ein Blick in die Spezifikation … aber das sagte ich ja schon.

Da würde mich interessieren, ob jemand eine Idee hat, warum das geändert wurde.

<a name=""> ist unnötig. Dafür ist das id-Attribut da.

Es wird ja weiterhin funktionieren müssen, damit Html abwärtskompatibel bleibt.

Ja. Aber verlass dich nicht drauf. Es gibt einige Altlasten, deren Browser sich bereits entledigt haben und nicht mehr unterstützen.

😷 LLAP

--
„Sag mir, wie Du Deine Maske trägst, und ich sage Dir, ob Du ein Idiot bist.“ —@Ann_Waeltin