Hallo,
[...] gar nicht so klar, was die nächsten Jahre bringen werden. Sicher werden die Browser nicht den Fallback grundlegend ändern, aber das type-Attribut wird wieder an Bedeutung gewinnen.
Hast du das in deiner Glaskugel gesehen?
[...] stattdessen spricht Microsoft von einer rein heuristischen Wahl und empfiehlt, die Scriptsprache immer anzugeben.
Die emphehlen ja auch den IE und Windows.
Klar, in der HTML 4.01 Strict-DTD ist das type-Attribut als "required" definiert, warum auch immer. Die Browser lesen aber meines Wissens ohnehin keine DTDs.
Wieso sollten sie auch DTDs lesen.
Um zu sehen, was wie ausgezeichnet wird und welche Attribute wo erlaubt bzw. nötig sind usw. usf. Wieso brauchen sie denn überhaupt einen Pfad zur DTD (im DOCTYPE-tag), wenn sie diese konsequent ignorieren?
[...] Solange man nicht die konkrete Syntax eines Dokuments gegen die allgemeinen Regeln prüfen will, besteht da natürlich kein Zusammenhang.
Das sollte ein Browser IMO aber tun, s.u.
Das heißt aber nicht, dass die Browser nicht die Grammatik implementiert haben. Sie haben dies und sind darüber hinaus noch ziemlich fehlertolerant.
Ja, leider sind sie vieeel zu fehlertolerant.
wie kommst du vom type-Attribut auf den Doctype Switch?
Ist doch klar: Weil der DOCTYPE die DTD angibt, nach deren Regeln das Dokument strukturiert sein soll, und darin steht nunmal, ob das type-Attribut optional oder notwendig oder überhaupt vorhanden ist. DOCTYPE ist Bestandteil von SGML (HTML ist ja eine SGML-Anwendung) und verweist eben auf die DTD, was die Browser aber nicht wirklich interessiert.
Web-Browser sollten IMO lieber die angegebene DTD lesen und wie ein SGML-Parser vorgehen, wäre jedenfalls schön, oder? Statt dessen haben sie DOCTYPE zu einem bloßen Schalter degradiert, über den nur gesteuert wird, welche der eingebauten willkürlichen Darstellungsweisen zum Zug kommen soll.
Gruß, Don P