/ / Welche HTML-Elemente sollten nicht übergeordnete <body> -Elemente haben? - HTML, HTML-Parsing

Welche HTML-Elemente sollten über keine <body> -Elemente verfügen? - HTML, HTML-Analyse

Ich suche nach einer Liste von HTML - Elementen, die übergeordnete Elemente haben sollen (außer <body>), damit sie am sinnvollsten sind.

Zum Beispiel a <tr> Element wäre ein solches Element, weil es in einem sein sollte <tbody> oder <table> Element. EIN <div> Ein Element wäre kein solches Element, weil es vollkommen in Ordnung ist, sich in einem Element zu befinden <body> Element direkt.

Kennt jemand den besten Weg, um eine solche Liste zu bekommen? ich fand diese Liste als Ausgangspunkt, aber es würde mir einige Zeit sparen, wenn es einen besseren Weg gäbe, als wenn ich jeden einzeln überprüfe.

Antworten:

3 für die Antwort № 1

Für HTML-Versionen vor HTML 2.0 bis HTML 4.01 und XHTML 1.x finden Sie in der (den) DTD (s) (die von der entsprechenden Spezifikation auf der W3C-Site verlinkt sind). (Frühere Versionen von HTML waren nicht so formalisiert, dass sie eine DTD hatten. Spätere Versionen von XHTML gingen in Richtung Schema. HTML 5 wird so definiert, dass es keine offizielle maschinenlesbare Spezifikation gibt, aber ich denke, dass es eine gibt Drittanbieter-Schemata da draußen).

Finden Sie die Definition des body-Elements:

<!ELEMENT BODY O O (%block;|SCRIPT)+ +(INS|DEL) -- document body -->

Erweitern Sie die Referenzen (%body; in diesem Beispiel).

Dadurch erhalten Sie eine Liste der Elemente, die untergeordnete Elemente des body-Elements sein können.

Subtrahieren Sie dann einfach diese Liste einer Liste aller Elemente in dieser HTML-Version, und Sie erhalten die Elemente, die entweder untergeordnete Elemente eines anderen Elements als body sein müssen oder das Stammelement sind (<html>).