karlKlammer2: Hilfe, Hilfe, meine tabelle spielt verrückt!

hallo leute!

ich hab eine tabelle gemacht, im dreamweaver, doch das ding tut nicht so wie es sollte

wenn ich wenig text drinnhab ist alles super toll
doch sobald ich es fülle mit mehreren zeilen siehts echt dumm aus

ankucken kann man sich das hier
www.thebug.tk

thx4help!

  1. hallo leute!

    Würde gern helfen, aber der Server ist zu langsam. Ein erster Blick mit dem Mozilla 1.1 erbrachte ein positives Ergebnis, alles ok. Ein zweiter mit dem IE 6.0 zeigte Dein Problem (fehlende Grafik).

    Validiere die Seite bei validator.w3.org um Fehler auszuschließen.

    Der IE6 hat ein Problem mit Tablellen, daran kann es liegen, muss aber nicht. wenn Deine Seite nach [F5] korrekt angezeift wird (was Dein Server gerade verweigert...) dann blende die Tabelle mittels Javascript aus und gleich wieder ein.

    Ein Beispiel findest Du unter: http://www.dieWohnung.de, lass Dir einfach Angebote listen und sieh Dir das Script im Quelltext an.

    fastix

    1. hi fastix,

      Der IE6 hat ein Problem mit Tablellen

      hat er nicht. Jedenfalls nicht generell. Wenn er aber mehrfach
         <td valign="top"><font size="-1"><br>
            <br>
            <br>
            </font> <font size="-1"><br>
            <br>
            <br>
            </font>
      vorgesetzt bekommt, kriegt selbst der IE mit seiner hohen Fehlertoleranz Probleme, ganz zu schweigen von anderen Browsern. Die Tabelle ist eine einzige Katastrophe und sollte, da ja bereits bekannt ist, daß es an ihr liegt, dringend revidiert werden  -  unabgeschlossene Zellen, unrichtige "rowspan" und "colspan"-Angaben zwingen jedes Anzeigemedium (Browser) in die Knie.

      Christoph S.

      1. hi fastix,

        Der IE6 hat ein Problem mit Tablellen
        hat er nicht. Jedenfalls nicht generell. Wenn er aber mehrfach

        Hallo Christoph!

        Ich habe dem Probanten doch vorgeschlagen zunächst sein HTML zu valdieren. Auch ich vermute immer zuerst das Problem in schlechtem Code...

        Zum IE: Hat er doch...

        In meiner grundvaliden Tabelle verschluckt der IE gelegentlich ganze Zeilen.

        Das wurde im Forum aber bereits besprochen und bestätigt.

        fastix

      2. ich weiss der code ist recht lang
        aber ich sehe hier keinen fehler
        versucht euch die tabelle mal vorzustellen
        ich hab eine version mit border=1 hochgeladen
        www.thebug.tk

        also tabellenafang und erste ebene

        ********************
        <table width="100%" border="1" cellspacing="0" cellpadding="0">
                <tr>
                  <td width="2"><img src="gfx/1.gif" width="2" height="25"</td>
                  <td width="140" background="gfx/2.gif"><img src="fill.gif" width="1" height="1"><font color="#E5E3E3"><strong>
                    Yeah yeah</strong></font></td>
                  <td width="16"><img src="gfx/3.gif" width="16" height="25"></td>
                  <td background="gfx/5.gif"><img src="fill.gif" width="1" height="1"></td>
                  <td width="2" background="gfx/44.gif"><img src="fill.gif" width="1" height="1"></td>
                </tr>
        **********************
        ok, hier fünf spalten
        die ersten 3 spalten haben ein width tag sind also in der breite festgelegt
        dann kommt eine ohne width tag
        und wieder eine mit

        die 4. spalte, die ohne width, sollte doch in der breite mit dem browserfester variieren, sich anpassen

        in den folgenden ebenen sind keine spalten mehr mit der in der mitte oben überein, also sollte es auch dort keine probleme geben

        aber warum gehts es nicht....?

        thx4help!
        *********************
                <tr>
                  <td rowspan="5" bgcolor="#005417"><img src="fill.gif" width="1" height="1"></td>
                  <td colspan="3" bgcolor="#E2EDE6"><img src="fill.gif" width="1" height="3"></td>
                  <td rowspan="5" bgcolor="#005417"><img src="fill.gif" width="1" height="1"></td>
                </tr>
                <tr>
                  <td height="21" colspan="3" bgcolor="#E2EDE6"> <table width="100%" border="0" cellspacing="0" cellpadding="0">
                      <tr>
                        <td width="8"><img src="fill.gif" width="8" height="8"></td>
                        <td>version 1 vieeeel text text text text text text text text
                          text text text text text text text text text text text text
                          text text text text text text text text text text text text
                          text text text text</td>
                        <td width="8"><img src="fill.gif" width="8" height="8"></td>
                      </tr>
                    </table></td>
                </tr>
                <tr>
                  <td colspan="3" bgcolor="#E2EDE6"> <img src="fill.gif" width="1" height="3"></td>
                </tr>
                <tr>
                  <td height="2" colspan="5" bgcolor="#005417"><img src="fill.gif" width="1" height="1"></td>
                </tr>
              </table>

        1. hallo ;-)
          (übrigens wärs besser, wenn du deine postings mit ner Anrede beginnen würdest)

          ich weiss der code ist recht lang
          aber ich sehe hier keinen fehler

          Aber ich sehe welche und versuche mal, sie dir zu zeigen. Deine gesamte Tabelle hat (in leicht korrigierter Schreibung des Codes) folgendes Aussehen:

          <table width="100%" border="1" cellspacing="0" cellpadding="0"><tr>
          <td width="2"><img src="gfx/1.gif" width="2" height="25"</td>
          <td width="140" background="gfx/2.gif"><img src="fill.gif" width="1" height="1"><font color="#E5E3E3"><strong>Yeah yeah</strong></font></td>
          <td width="16"><img src="gfx/3.gif" width="16" height="25"></td>
          <td background="gfx/5.gif"><img src="fill.gif" width="1" height="1"></td>
          <td width="2" background="gfx/44.gif"><img src="fill.gif" width="1" height="1"></td>
          </tr><tr>
          <td rowspan="5" bgcolor="#005417"><img src="fill.gif" width="1" height="1"></td>
          <td colspan="3" bgcolor="#E2EDE6"><img src="fill.gif" width="1" height="3"></td>
          <td rowspan="5" bgcolor="#005417"><img src="fill.gif" width="1" height="1"></td>
          </tr><tr>
          <td height="21" colspan="3" bgcolor="#E2EDE6">
           <table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
           <td width="8"><img src="fill.gif" width="8" height="8"></td>
           <td>version 1 vieeeel text text text text text text text text text text</td>
           <td width="8"><img src="fill.gif" width="8" height="8"></td>
           </tr></table>
          </td>
          </tr><tr>
          <td colspan="3" bgcolor="#E2EDE6"> <img src="fill.gif" width="1" height="3"></td>
          </tr><tr>
          <td height="2" colspan="5" bgcolor="#005417"><img src="fill.gif" width="1" height="1"></td>
          </tr></table>

          Das heißt, in der _ersten_ Tabellenzeile stehen fünf Zellen (Spalten), ehe das erlösende </tr> kommt.
          In der zweiten Tabellenzeile stehen nur drei Tabellenzellen, allerdings soll sich die mittlere über drei Spalten erstrecken, womit die vorgegebenen fünf Spalten insgesamt wieder erreicht sind. ABER: die beiden seitlichen Tabellenzellen sollen sich jetzt jeweils über 5 Zeilen erstrecken ("rowspan"), also bis zur sechsten Zeile, und so viele nachfolgende Zeilen gibt es einfach nicht.
          Die dritte Tabellenzeile enthält nur eine Zelle, die sich über drei Spalten erstreckt  -  das ist wegen der "rowspan"-Vorgaben in der zweiten Zeile korrekt. Außerdem enthält sie eine weitere (unproblematische) Tabelle.
          Die vierte Zeile enthält wieder nur eine Zelle, die sich wieder über drei Spalten erstrecken soll  -  das ist korrekt.
          Die fünfte und sechste Zeile fehlen !!
          Die siebente Zeile enthält wieder nur eine Zelle, die sich aber jetzt über fünf Spalten erstreckt und als "Tabellenabschluß" fungiert  -  die Breitenangabe für "fill.gif" mit dem Wert "1" ist kaum relevant.

          versucht euch die tabelle mal vorzustellen

          ich glaub, das hab ich eben getan.

          Anzumerken wäre noch, daß du viel zu viele überflüssige tags in deine Tabelle reingeschrieben hast. Zum Beispiel sollte man das, was du mit <strong> und <font> gemacht hast, in einer externen CSS erledigen. Gleiches gilt für deine "bgcolor"-Vorgaben.
          Und schließlich: du hast für Tabellenbreiten und Tabellenhöhen immer nur absolute Zahlenwerte angegeben. Su solltest noch festlegen, ob das Pixel (px) sein sollen oder Punkte (pt) oder Zentimeter usw.  -  und auch das sollte in einer externen CSS stehen. Deine Breitenangaben führen in der ersten Zeile zum Beispiel zu 2+140+16+undefiniert+2 Pixeln Breite. In den anderen Zeilen hast du keine Breitenangaben mehr gemacht, sie sollten dort aber auch vorkommen, wenn dir an einer pixelgenauen Breite gelegen ist  -  im Widerspruch dazu steht freilich, daß die gesamte Tabelle keine Pixelbreite hat, sondern 100% breit laufen soll. Vorzuziehen wäre grundsätzlich ein Angabe in Prozent-Anteilen.

          Grüße aus Berlin

          Christoph S.