Einfache Tabelle wird unter IE falsch dargestellt
Johannes Weber
- html
Hallo,
ich habe mir eine kleine Tabelle mit 100% breite gebaut. In dieser Tabelle habe ich noch eine Tabelle mit 100% breite, wo ich rechts zentriert einen Text ausgeben will.
Unter Firefox wird mein Text ganz rechts angezeigt. Im IE habe ich zwischen dem rechten Rand und dem Text aber noch 5cm Platz. Was kann ich tun, damit es überall läuft?
Hier mein code:
<html>
<head>
<title>my home site</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000" leftmargin="8" topmargin="8">
<table width="100%" bordercolor="#000000" border="0" height="100%" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" height="259">
<table width="100%" border="0" height="12">
<tr>
<td height="25" width="174"> </td>
<td height="25" width="635" valign="top">
<div align="right">Hallo</div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
Johannes
Hallo!
Zuerst einmal die wichtigste aller Fragen:
Warum schachtelst du 2 100%-Tabellen ineinander? Das ist vollkommen unsinnig, da ja beide (fast) dieselbe Breite haben und sich nur in einem einzigen Pixel unterscheiden (die innere Tabelle ist einen Pixel kleiner).
Außerdem sehe ich noch einen Konflikt zwischen table width="100%" border="0" height="12"> und <td height="25" width="174"> </td>, denn wie kann eine Tabellenzelle 25 Pixel hoch sein, wenn die gesamte Tabelle nur 12 Pixel hoch ist?
Ich würde dir deshalb zu einer Tabelle raten, in der du in aller Ruhe und ohne Durcheinander absolute Pixelbreiten und -höhenangaben setzen kannst.
Was dein rechtsbündig-Problem angeht:
Versuche einfach mal das "align=right" im <td>-Tag einzufügen. Das müßte gehen. Wenn sich der Browser nicht schon durch die ganzen anderen seltsamen Notationen irritiert fühlt :D
Gruß
Flavius
Hallo Johannes,
Warum machst Du das so kompliziert? Ueber Tabellen als Designelement will ich nichts sagen, das wurde im </archiv> schon zur Genuege getan.
<html>
Hier sollte erst ein Doctype stehen
<body bgcolor="#FFFFFF" text="#000000" leftmargin="8" topmargin="8">
Hierfuer waere CSS zeitgemaesser
<table width="100%" bordercolor="#000000" border="0" height="100%" cellspacing="0" cellpadding="0">
Hierfuer auch
<td valign="top" height="259">
height ist in diesem Zusammenhang kein Standardattribut
<table width="100%" border="0" height="12">
Wozu die Schachtelung, colspan="2" in der naechsten Reihe wuerde das auch erledigen
<td height="25" width="635" valign="top">
Erst sagst Du 100%, dann 635 Pixel, hier liegt das Problem
<div align="right">Hallo</div>
Das div-Elemnet ist ueberfluessig, das Alignment kannst Du auch auf td beziehen
Gruß,
Dieter
Hallo,
deine Breitenangaben sind widersprüchlich.
Äussere Tabelle: 100%, das könnten also 1024 Pixel sein. Oder auch 640 oder, oder ...
Innere Tabelle wieder 100%. Aber cellspacing und cellpadding auf Standardeinstellung, also irgendeinen Abstand zum Rand.
Linke Spalte 174 Pixel breit, rechte Spalte 635 Pixel. Fehlt noch was bis zum rechten Rand bei 1024 Pixel. Was soll der arme Browser jetzt machen ?
Nimm die Breitenangabe der rechten Spalte weg, dann sollte der Text rechts stehen. Du willst ihn aber rechts zentriert, was soll das sein ?
Kalle
Hallo du da draußen,
[Tabellenlayout völlig ohne CSS wird im IE falsch dargestellt]
Der M$IE stellt dein sinnloses Tabellekonstrukt nicht _falsch_ dar. Solange du ihm nicht sagst, _wie_ er es darstellen soll, bleibt es ganz allein ihm überlassen, was er darstellt.
Grüße von hier drinnen, aus Biberach an der Riss,
Candid Dauth (Dogfish)