die HTTP-Antwort-Header-Informationen der Browser bewirkt, dass die Informationen als XML interpretieren:
HTTP/1.1 200 OK
Date: Sun, 21 Feb 2010 02:32:02 GMT
Server: Apache/2.2.14 (Debian)
Vary: Accept-Encoding
Transfer-Encoding: chunked
Content-Type: text/xml; charset=UTF-8
Sie sehen, der Server, der die Seite war klug genug, serviert zu erkennen, dass dies ein XML-Dokument, und sagte dem Browser. Wenn Sie die Datei von der Festplatte laden, ist Ihr Browser möglicherweise nicht intelligent genug, um dies zu tun, und verlässt sich normalerweise auf die Erweiterung der Datei, um diese Informationen bereitzustellen.
Sie könnten versuchen, die folgende in das <head>
Element eingefügt:
<meta http-equiv="Content-Type" content="text/xml; charset=UTF-8" />
Sie sehen, was ich da tat? Es ist nur eine Spiegelung des HTTP-Antwortheaders, der den Dokumenttyp und die Codierung angegeben hätte.
Der Zweck dieses Tags ist es Browser zu denken, "Hey, der Server sagt mir, dass dieses Dokument HTML ist, aber das Dokument sagt mir, es ist XML. Das Dokument weiß wahrscheinlich besser als der Server, also ich ' Ich vertraue darauf ... :: interpretiert als XML :: "
Bestätigt. Reproduziert und behoben mit dieser Methode unter Mac OS X 10.6.2 – pestilence669
Interessant. Sollen alle HTML5-Dokumente eine .xml-Erweiterung haben, oder ist dies nur eine Funktion von SVG im Dokument? – Axeva
Ich habe nur ein bisschen gespielt und es scheint, dass sowohl FF als auch Chrome mit einer '.xhtml' Erweiterung richtig rendern ... Es scheint einfach falsch, dass sie keine Definition von Inhalt innerhalb der Datei akzeptieren (das Meta Tag zum Beispiel) ..), aber es scheint der Fall zu sein .. –