Gibt es irgendwelche Probleme mit immer selbst schließenden leeren Tags in HTML?

8

Gibt es irgendwelche Browserprobleme mit immer leeren leeren Tags in HTML. So kann beispielsweise ein leeres Kopf-Tag wie folgt geschrieben werden:

%Vor%

kann aber auch so geschrieben werden

%Vor%

Wird der zweite Fall in irgendeinem Szenario Probleme verursachen?

Danke

    
Simon 08.05.2010, 23:33
quelle

8 Antworten

3

Sie sollten nicht minimiertes Formular für Kopf in XHTML verwenden.

Ссылка

Über leere Elemente:

Ссылка

  

Gegeben eine leere Instanz eines Elements   wessen Inhaltsmodell nicht LEER ist (z. B.   Beispiel, ein leerer Titel oder Absatz)   Verwenden Sie nicht das minimierte Formular (z.   Verwenden Sie <p> </p> und nicht <p /> ).

Mit anderen Worten, der Absatz sollte immer in XHTML geschlossen sein, in HTML könnten Sie nur mit dem öffnenden Tag gehen. Aber wenn das Element Inhalt haben soll, sollte es richtig geöffnet und geschlossen werden.

Zum Beispiel hat Zeilenumbruch das leere Inhaltsmodell und kann als <br /> geschrieben werden (das gleiche gilt für <hr /> ), aber nicht <div /> .

Siehe auch SO Frage.

Leere Elemente (XHTML)

Kurzschrift-Markup in HTML

    
Davor Lucic 08.05.2010, 23:45
quelle
8

Selbstschließende <script> -Tags können einige Browser sehr schlecht durcheinander bringen. Ich erinnere mich, dass meine ganze Seite im IE in Luft aufging, nachdem ich ein Skript-Tag selbst geschlossen hatte - alles nachdem es als Skript gelesen wurde.

    
Max Shawabkeh 08.05.2010 23:37
quelle
4

Angenommen, Sie bedienen Ihr XHTML als XML, nein. <head></head> ist vollständig entspricht <head /> . In der Tat wird ein XML-Parser Ihnen nicht einmal sagen, welche Sie haben.

(Es gibt jedoch ein Problem, dass das <head> -Tag ein <title> enthalten muss.)

    
Williham Totland 08.05.2010 23:38
quelle
2

Selbstschließende Tags sind in HTML nicht vorhanden. % Co_de% wird immer ignoriert, dh / und <foo/> sind äquivalent. Für Elemente wie <foo> ist das in Ordnung, weil du br willst. % Co_de% bedeutet jedoch dasselbe wie <br> , was ein Problem ist (wie in anderen Antworten erwähnt). <script src="..." /> ist weniger ein Problem, weil das <script src="..."> end-Tag sowieso optional ist.

In XML hingegen funktionieren selbstschließende Tags, was Sie wollen. Allerdings verwenden Sie wahrscheinlich nicht XML , selbst wenn Sie einen XHTML-Doctype haben. Wenn Sie Ihre Dokumente nicht mit einem <head/> , </head> oder text/xml MIME-Typ (oder einem anderen XML MIME-Typ) senden, insbesondere wenn Sie sie als application/xml senden, werden sie nicht als XML behandelt.

    
Ms2ger 09.05.2010 15:07
quelle
0

Nicht, dass ich mir dessen bewusst bin. Ein Nachteil, der mich in der Vergangenheit gebissen hat, ist das Schließen meines Skript-Tags: <script type="text/javascript" src="somefile.js" />

Dies führt zu einigen interessanten Fehlern.

    
BradBrening 08.05.2010 23:37
quelle
0

Im Allgemeinen kann ein leeres Element als selbst schließendes Tag oder als öffnendes und schließendes Tag geschrieben werden.

Die HTML4-DTD gibt jedoch an, dass der HEAD des Dokuments ein TITLE-Element enthalten muss.

"Jedes HTML-Dokument muss ein TITLE-Element in der HEAD-Sektion haben."

Ссылка

    
Peter 08.05.2010 23:45
quelle
0

Ich glaube, einige ältere Browser hatten Probleme mit dem fehlenden Whitespace - insbesondere <head/> wird als "head /" -Tag interpretiert, während <head /> als "head" -Tag mit einem leeren Attribut "/" interpretiert wird, das ignoriert wird.

Dies betrifft nur einige Browser, AFAIK. Entweder ist XHTML gültig, aber ältere HTML-Browser können Probleme haben.

Dies ist tatsächlich in den XHTML-Richtlinien als C.2

dokumentiert     
Steven Schlansker 08.05.2010 23:38
quelle
0

Selbst wenn nur Browserprobleme berücksichtigt werden (d. h. die Gültigkeit nicht berücksichtigt wird) und die Frage auf den Wert head beschränkt wird, lautet die Antwort immer noch ja.

Vergleichen

%Vor%

gegen

%Vor%

diente als Text / HTML für jede Version von IE.

Does this display? wird nur im letzten Beispiel angezeigt.

    
Alohci 09.05.2010 09:52
quelle

Tags und Links