HTML-Variante "strict" (Anzeigefehler im IE)
roze84
- html
Hallo!
Habe beim Programmieren meiner HP nur HTML-Elemente und HTML-Attribute verwendet,
die in der strict-Variante auch erlaubt sind, den Rest hab ich mit CSS gemacht.
Ich habe allerdings zu Beginn meiner Arbeit die folgende Notation vergessen:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Als ich die Notation dann eingefügt habe, wurde die Tabelle, in der das Layout eingearbeitet ist,
vom Internet Explorer verzerrt dargestellt, ich habe keine Ahnung warum.
Homepage ohne Aufruf: http://mitglied.lycos.de/roze84/hp1.html
Homepage mit Aufruf: http://mitglied.lycos.de/roze84/hp2.html
und hier noch der Quelltext der Tabelle:
<htlm>
<head>
<title>TEST</title>
</head>
<body>
<table style="table-layout:fixed; border-width:0px; border-collapse:collapse">
<tr>
<td style="width:10px; height:10px"></td>
<td style="width:150px; height:10px"></td>
<td style="width:10px; height:10px"></td>
<td style="width:650px; height:10px"></td>
<td style="width:10px; height:10px; text-align:center; background-image:url(images/interface/c-t-r.gif)"></td>
</tr>
<tr>
<td style="width:10px; height:150px"></td>
<td style="width:150px; height:150px; text-align:center; vertical-align:middle"></td>
<td style="width:10px; height:150px"></td>
<td style="width:650px; height:150px; text-align:center"></td>
<td style="width:10px; height:150px; text-align:center; background-image:url(images/interface/m-r.gif)"></td>
</tr>
<tr>
<td style="width:10px; height:10px"></td>
<td style="width:150px; height:10px"></td>
<td style="width:10px; height:10px; text-align:center; background-image:url(images/interface/c-b-m.gif)"></td>
<td style="width:650px; height:10px; text-align:center; background-image:url(images/interface/b-m.gif)"></td>
<td style="width:10px; height:10px; text-align:center; background-image:url(images/interface/c-b-r.gif)"></td>
</tr>
<tr>
<td style="width:10px; height:20px"></td>
<td style="width:150px; height:20px"></td>
<td style="width:10px; height:20px; text-align:center; background-image:url(images/interface/m-r.gif)"></td>
<td style="width:650px; height:20px; background-color:#C0C0C0"></td>
<td style="width:10px; height:20px"></td>
</tr>
<tr>
<td style="width:10px; height:300px"></td>
<td style="width:150px; height:300px; text-align:right; vertical-align:top; padding-right:10px"></td>
<td style="width:10px; height:300px; text-align:center; background-image:url(images/interface/m-r.gif)"></td>
<td style="width:650px; height:300px; text-align:center; vertical-align:top; padding-right:10px; background-color:#C0C0C0">
</td>
<td style="width:10px; height:300px"></td>
</tr>
<tr>
<td style="width:10px; height:10px; text-align:center; background-image:url(images/interface/c-b-l.gif)"></td>
<td style="width:150px; height:10px; text-align:center; background-image:url(images/interface/b-m.gif)"></td>
<td style="width:10px; height:10px; text-align:center; background-image:url(images/interface/c-b-r.gif)"></td>
<td style="width:650px; height:10px"></td>
<td style="width:10px; height:10px"></td>
</tr>
</table>
</body>
</html>
Ich hoffe jemand kann mir helfen
roze84
Hi roze84
Habe beim Programmieren meiner HP nur HTML-Elemente und HTML-Attribute verwendet,
Programmieren in HTML? ;-)
die in der strict-Variante auch erlaubt sind, den Rest hab ich mit CSS gemacht.
Ich habe allerdings zu Beginn meiner Arbeit die folgende Notation vergessen:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Das ist nicht richtig: Für Strict muss es heißen: "-//W3C//DTD HTML 4.01 Strict//EN"
Als ich die Notation dann eingefügt habe, wurde die Tabelle, in der das Layout eingearbeitet ist,
vom Internet Explorer verzerrt dargestellt, ich habe keine Ahnung warum.
Dieses Phänomen nennt sich Doctypeswitch[1]. Wenn !DOCTYPE nicht richtig angegeben ist schaltet der IE in den sogenannte "Quirks"-Modus, in dem er die Darstellungsfehler vorheriger Versionen beibehält. Wenn du eine korrekte Angabe machst verwendet er den "Standard-Compliants"-Modus, in dem er versucht sich so gut wie möglich anden Standard zu halten. Diese Phänomen tritt übrgiens auch bei anderen Browsern auf.
Schöne Grüße
Johannes
[1] Unter http://gutfeldt.ch/matthias/articles/doctypeswitch/table.html Findest du eine Übersicht, nach welchen Regeln die verschiedenen Browser den Darstellungsmodus wechseln.
Hallo Johannes
Dieses Phänomen nennt sich Doctypeswitch[1]. Wenn !DOCTYPE nicht richtig angegeben ist schaltet der IE in den sogenannte "Quirks"-Modus, in dem er die Darstellungsfehler vorheriger Versionen beibehält. Wenn du eine korrekte Angabe machst verwendet er den "Standard-Compliants"-Modus, in dem er versucht sich so gut wie möglich anden Standard zu halten. Diese Phänomen tritt übrgiens auch bei anderen Browsern auf.
Vielen Dank für deine Antwort, jetzt weiß ich wenigstens wie diese Darstellungsfehler zustande kommen.
Jetzt muss ich nur noch heraus bekommen, wie ich es löse. Hatte nämlich vor die "strict"-Variante zu verwenden,
aber da die Seite nur im "Quirks"-Modus richtig dargestellt wird, werd ich das wohl wieder vergessen.
Naja, nochmals danke
gruß roze84
Nochmal Hallo!
Hab eine Lösung gefunden:
im <table>-Element einfach das Attribut cellpadding auf 0 setzen,
dann wird die Tabelle im "Standard-Complaints"-Modus richtig dargestellt.
gruß roze84
Hallo Johannes,
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Das ist nicht richtig: Für Strict muss es heißen: "-//W3C//DTD HTML 4.01 Strict//EN"
Schau Dir mal http://www.w3.org/TR/html401/sgml/dtd.html an. (Unter "Typical Usage")
Die vorige Variante war korrekt, die Deinige ist es NICHT.
Viele Grüße,
Christian
Hi Christian
Schau Dir mal http://www.w3.org/TR/html401/sgml/dtd.html an. (Unter "Typical Usage")
Uups. Irgendwie hab ich das immer und überall übersehen. Tja man lernt eben immer wieder was neues ;-)
Schöne Grüße
Johannes
Hallo Johannes,
<pssst>
Uups. Irgendwie hab ich das immer und überall übersehen.
Ich habe das ehrlich gesagt auch lange _genauso_ falsch gemacht - bis ichs dann nochmal in SELFHTML nachgelesen habe...
</pssst>
Viele Grüße,
Christian
Hi roze!
und hier noch der Quelltext der Tabelle:
<htlm> [...]
Ui. Soweit ich weiß, heißt es html
Tschüss!