muß ein a-Tag immer abgeschlossen werden?
In erster Linie unterscheide bitte zwischen Tags und Elementen.
Elemente müssen immer geschlossen werden - in HTML geschieht dies gemäß den SGML-Regeln machmal auch implizit.
Ein Tag selbst muss gemäß den SGML-Regeln ebenfalls nicht immer geschlossen werden. Du tust aber gut daran, wenn du XHTML-Notation verwendest und sowohl Elemente alsauch Tags immer korrekt beendest.
Was passiert, wenn ich das nicht mache, also <a name='sprungmarke'> und hier nicht abschließe?
Das ist in HTML völlig OK, in XHTML-Serialisierungen müsstest du aber <a name='sprungmarke' /> notieren.
Ich frage deshalb, weil mir aufgefallen ist, dass ein Layer bei mir die Font-Größe aus dem a-Tag übernommen hat, weil ich den a-Tag nicht abgeschlossen hatte. Nach Abschluß behält er seine eigene Font-Anweisung.
Das lässt darauf schließen, dass du Fehler in deinem HTML hast, das dürfte nicht passieren.
Gibt es in HTML außer dem img-Tag noch andere Tags, die keinen Abschluß benötigen?
Ja - wie aber schon erwähnt ist das sehr spezifisch und stark von den SGML-Regeln und dem verwendten Browsern abhängig.
<p/foo/ ist z.B. genauso ok wie <p>foo</p>
auch folgende beiden Varianten sind vollig ok
<ul>
<li>foo
</ul>
<ul>
<li>foo</foo>
</ul>
Solche schreibweise sind aber in komplexeren Dokumenten kaum lesbar oder verständlich - zudem besteht das Risiko dass ein Browser - obwohl es sich um völlig korrekten Code handet - diesen Code uminterpretiert und anders als eigentlich vorgesehen darstellt.
Darum nochmal: vergiss alles was du zum Thema meinst zu wissen und versuche im eigenen Interesse auf XHTML umzusteigen bzw. XML-Notation zu verwenden.
Die Regeln sind zwar "strenger" aber dadurch ungleich einfacher weil man nicht darüber nachdenken muss ob es jetzt erlaubt ist oder nicht.
In XHTML schließst du einfach JEDES Element IMMER ohne Ausnahmen - und wenn es ein inhaltsleeres Element ist eben mit einem Slash im Start-Tag.