Gunnar Bittersmann: Abschluss Schrägstrich mittlerweile falsch < /> – nein, immer noch richtig

Beitrag lesen

@@Henry

ich dachte eine korrekte Auszeichnung für eine Imagedatei so sein:
Bsp. <img src="x.png" title="y" alt="blabla" />

Ja, das ist korrekt – in XHTML 1.x sowie in HTML5 a/k/a HTML.

Dann stellte ich durch Auswertung vom removeAttribute('title') Resultat fest, dass der IMG-Tag auch verändert wurde, nicht nur title-Attribut entfernt.

Es wurde zu <img src="x.png" alt="blabla"> also ohne abschließenden Schrägstrich.

?? Wo wurde es das? Im Entwicklungswerkzeug deines Browsers?

Nein, wurde es nicht. Es war schon vorher so, bevor du removeAttribute('title') aufgerufen hast.

Das Entwicklungswerkzeug stellt das DOM dar, nicht den HTML-Quelltext, und zwar ohne / beim <img>-Tag, auch wenn’s im HTML-Quelltext als <img/> notiert ist.

Dachte zuerst an einen Fehler von removeAttribute(), wobei mich schon wundert, dass es mehr macht als es soll, doch ein Blick ins Selfhtml brachte mich dann auf die Spur.

In XHTML benötigt das image-Tag den schließenden Schrägstrich (/).

Nein, das stimmt so nicht. (Steht das so in SELFHTML? Wenn ja, bitte die Stelle angeben, damit das berichtigt werden kann.)

In XHTML müssen auch leere Elemente wie img geschlossen werden. Das kann durch / im Start-Tag geschehen – oder auch mittels End-Tag: <img src="" alt=""></img>

Aha... also back to the roots? Alles wieder beim Alten auch dieses dämliche </ br> offensichtlich wieder in <br>. Sehr gut ;-)

Du meintest <br/>?

HTML5 kann in HTML-Syntax sowie in XHTML-Syntax geschrieben werden.

In XHTML-Syntax muss es <br/> heißen, in HTML-Syntax (die üblicherweise verwendet wird) ist beides erlaubt: <br> und <br/>. [HTML §8.1.2.1]

Aber gibt es da noch was zu beachten, evtl. Ausnahmen?

Alles – ohne Ausnahme.

Äh, was meintest du mit der Frage?

LLAP 🖖

--
“When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory