logo
logo
Internet Explorer und XHTML (1.0, 1.1)? - Mac-TV.de
Zurück   Mac-TV.de > Rund um Apple und Technik > Macs, macOS und Zubehör
Registrieren Hilfe Suchen Heutige Beiträge Alle Foren als gelesen markieren

Antwort
 
Themen-Optionen Thema durchsuchen
  #1  
Alt 23.01.2008, 22:13
Trent Trent ist offline
Benutzer
 
Registriert seit: 05.01.2008
Beiträge: 47
Internet Explorer und XHTML (1.0, 1.1)?

Hallo,

kann es eigentlich sein, dass der Internet Explorer (selbst beim IE7) XHTML 1.1-konforme Seiten überhaupt nicht anzeigt, sondern stattdessen zum Download anbietet?

In meinen neu angeschafften Büchern zu dem Thema lese ich fast überall, dass man doch nun am besten XHTML nehmen soll aus diesen und jenen Gründen etc. Und in der Tat finde ich als Anfänger das (strikte) XHTML 1.0 oder auch 1.1 logisch und nachvollziehbar im Gegensatz zu normalem HTML, wo mehr oder weniger so ziemlich alles an Kauderwelsch erlaubt ist (mal schließende Tags, mal nicht usw.).

So, und jetzt hat man also schön in XHTML rumprogrammiert und der einzige, weltweit am meisten benutzte Browser, nämlich der Internet Explorer schafft es nicht, diese Seite anzuzeigen? .xhtml-Dateien funktionieren nicht (selbst bei entsprechender Anweisung in einer .htaccess-Datei auf dem Server) und .html-Dateien auch nicht. Selbst der hinterletzte Linuxbrowser kriegt das hin.

Daher mal meine (Laien-)Frage: Gibt es da irgendeinen Weg, den IE zu bedienen, ohne dass man auf XHTML verzichtet? Oder muss man da momentan einfach Abstriche machen, weil der IE nunmal der bekannteste und am meisten benutzte Browser ist?

Ratlosen Gruss
Trent

Geändert von Trent (24.01.2008 um 11:45 Uhr).
Mit Zitat antworten
  #2  
Alt 23.01.2008, 23:05
Jörn Jörn ist gerade online
Administrator
 
Registriert seit: 05.01.2008
Beiträge: 9.436
Du meinst, dass die Datei als Download geladen wird und nicht im Browser dargestellt wird?

Wenn Du das meinst, dann ist das eine Einstellung, die man am Server vornehmen muss. Es geht um die MIME-Typen. Das ist eine Tabelle, in der alle Dateiendungen (.html, .mov, .exe, .zip und so weiter) aufgeführt sind, und welcher MIME-Typ zu dieser Dateiendung gehört.

Der MIME-Typ wird dann an den Browser geschickt, sobald eine Datei vom Server angefordert wird. Der Browser erkennt an dieser MIME-Information, was er mit den Daten anfangen soll. Manche Dateien sollen angezeigt werden (.html), manche sollen als Datei geladen werden (.zip oder .exe).

Vermutlich fehlt in dieser MIME-Tabelle der Eintrag für die Endung ".xhtml", oder der Eintrag ist falsch.

Du musst also Deinen Provider bitten, diese Tabelle für Dich zu ändern. Oder Du änderst die Endung Deiner Dateien auf ".html", egal was letztlich drinsteckt.

-----------

Ich würde Dir einen möglichst "konservativen" Ansatz bei der Web-Programmierung empfehlen. Wenn Du versuchst, das Neueste, Tollste und Modernste zu verwenden, dann wirst Du viele Probleme bekommen. Und zwar gerade mit dem Internet Explorer. Version 7 ist übrigens keineswegs weit verbreitet. Bei Version 6 wirst Du froh sein, wenn die Dinge halbwegs laufen. (Solange es auch in anderen Browsern laufen soll.)
Mit Zitat antworten
  #3  
Alt 24.01.2008, 12:36
Trent Trent ist offline
Benutzer
 
Registriert seit: 05.01.2008
Beiträge: 47
Danke für Deine hilfreiche Antwort!

Nach einigem Probieren habe ich es nun geschafft, dass wenigstens strikte XHTML 1.0-Seiten im IE 5.5, 6 und 7 angezeigt werden. Woran es auch immer lag, dass diese vorher nicht angezeigt wurden, kann ich gar nicht genau sagen. Wenigstens etwas.

Bei XHTML 1.1-Seiten jedoch versagt der IE (5.5 bis 7). Weder ist er in der Lage .xhtml- noch .html-Dokumente anzuzeigen, die mit folgendem Grundgerüst daherkommen:

HTML-Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<title>XHTML 1.1</title>
		<meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
	</head>
	<body>
	<h1>XHTML 1.1</h1>
	</body>
</html>
Eine Änderung in der MIME-Tabelle durch einen Eintrag in einer htaccess-Datei brachte auch keinen Erfolg,

Code:
DirectoryIndex index.xhtml
AddType application/xhtml+xml;charset=utf-8;qs=0.999 .xhtml
weil der IE (selbst der "neue" IE 7) schlicht nicht dazu zu bewegen ist, xhtml-Dokumente anzuzeigen, wie mir nach mehrstündiger Internetrecherche klar geworden ist.

Der W3 Validator zeigt diese Dateien im übrigen durchweg als gültig an.

----
Wenn ich Deinen Hinweis richtig verstehe, sagst Du, dass man sich die Verwendung von XHTML reiflich überlegen und auf größtmögliche Kompatibilität achten sollte.

Mein Ziel ist es, dass die Webseiten halbwegs vernünftig auch im Internet Explorer dargestellt werden, insbesondere was die Verwendung von CSS betrifft. Da dürften zukünftig ja auch noch diverse Probleme auf mich zukommen . - obwohl ich mich ernsthaft frage, ob es mir diesen Aufwand wert ist. Bis jetzt habe ich produktiv so gut wie nichts (weiteres) über (X)HTML gelernt, außer dass ein Produkt aus dem Hause Microsoft mal wieder Probleme bereitet - was auch sonst.

Sollte man also im Hinblick auf den IE ganz die Finger von XHTML lassen und nun HTML nehmen?

Dem Wahnsinn wieder ein Stück näher

T.
Mit Zitat antworten
  #4  
Alt 09.03.2008, 00:06
seth13 seth13 ist offline
Neuer Benutzer
 
Registriert seit: 05.01.2008
Beiträge: 3
Keine Angst, du brauchst nicht aufgrund der Unzulänglichkeiten von Microsoft auf XHTML zu verzichten. Das eigentliche Problem dabei ist, wie Jörn schon richtig erwähnt hat, der MIME-Type. "application/xhtml+xml" ist zwar eigentlich der richtige MIME-Type für XHTML-Dokumente, aber in der Praxis kann man den leider nicht verwenden, da der Internet Explorer damit nix anfangen kann und stattdessen den Download-Dialognzeigt. Die einfachste und verbreitetste Lösung des Problems ist, XHTML-Dokumente mit dem MIME-Type "text/html" auszuliefern. Ist zwar streng genommen falsch, aber in der Praxis halt das praktikabelste.

Ich versuch das jetzt mal möglichst kurz zu erläutern: Anhand des MIME-Types erkennt der Browser die Art des Dokumentes und verwendet dann seine entsprechenden Programmroutinen für die weitere Verarbeitung. Jeder Browser sollte dabei für (X)HTML-Dokumente unter anderem eine Fehlerbehandlung entsprechend des jeweiligen W3C-Standards verwenden. Wenn du jetzt ein XHTML-Dokument hast, der MIME-Type des Dokumentes aber "text/html" lautet, wird ein Browser das Dokument auch "nur" als HTML verarbeiten und eben nicht die (eigentlich viel strengeren) XHTML-Regeln anwenden. Das heisst dann z.B., dass aus Browsersicht ein nicht geschlossenes Element keinen Fehler darstellt, obwohl das laut XHTML-Standard nicht erlaubt ist. Solange du aber sicher bist, dass du sauberes und valides XHTML geschrieben hast, ist das Ganze eher theoretischer Natur und daher zu vernachlässigen und du kannst getrost XHTML (dann halt nur mit dem MIME-Type "text/html") verwenden.
Mit Zitat antworten
Antwort


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Gehe zu




Powered by vBulletin® Version 3.6.8 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.