chris: Zellenhöhe in Tabelle tut nicht

Hi Leute,

bin gerade dabei mir ne Tabelle zu basteln und will den Zellen jetzt eine Höhe in % zuweisen. Klappt aber nicht. Die Tab. sieht so aus:

<table border="1" width="100%" height="80%">
<tr >
  <td height="5%">xyz</td>
  <td  >xyz</td>
  <td  >xyz</td>
  <td  >xyz</td>
   <td colspan="3" rowspan="2" align="right" width="43%"
    height="60"><img src="*.gif" ></td>
</tr>
<tr>
   <td colspan="4" width="55%" height="58%">abc</td>
</tr>
  <td width="14%" height="15%>qwe</td>
  <td><img src="*.gif"></td>
  <td><img src="*.gif"></td>
  <td><img src="*.gif"></td>
  <td><img src="*.gif"></td>
  <td><img src="*.gif"></td>
  <td><img src="*.gif"></td>
</tr>
</table>

Wenn jemand ne Idee hat, wäre ich dankbar.

Gruß chris

  1. Hallo,

    Aus den Angaben in Deiner Tabelle bin ich nicht so recht schlau geworden. Was klappt nicht? Was sollte klappen?

    Zuallererst solltest du erst mal die Fehler beseitigen. Da fehlt ein <tr> und ein " in der Tabelle. Dann hat die erste Reihe 5 <td>'s, die zweite 4 und die dritte 7!

    Dann hast Du 3 Tabellenreihen. Die erste soll 5% hoch sein, die zweite 58% und die dritte 15%. Fehlen 22%, die der Browser natürlich nach seinem Gutdünken aufteilt.

    Vielleicht solltest Du die Kapitel in SELFHTML über Tabellen noch mal durcharbeiten. Nein, nicht vielleicht, sondern auf jeden Fall.

    Gruß Markus

    1. Die Tab. sieht so aus:

      -----------------------------
      |   |   |    |    |           |
      |-----------------|           |
      |                 |           |
      |                 |           |
      |                 |           |
      |-----------------------------|
      |   |    |    |   |  |   |    |
       -----------------------------

      Links oben die vier Zellen sollen 5% hoch sein, die untere Reihe 15% und der Rest 80 bzw. 85%.

      Ich habe mit 80% gerechnet, da die Tab. 80% des Schirms einnehmen soll und das hab ich auch so definiert:
      (<table border="1" width="100%" height="80%">)
      Muß ich jetzt bei der Aufteilung mit der größe des Schirms, oder der Tab rechnen?

      Danke im vorraus.

      chris

      1. Hi again,

        Die Tab. sieht so aus:


        |   |   |    |    |           |
        |-----------------|           |
        |                 |           |
        |                 |           |
        |                 |           |
        |-----------------------------|
        |   |    |    |   |  |   |    |

        Links oben die vier Zellen sollen 5% hoch sein, die untere Reihe 15% und der Rest 80 bzw. 85%.

        Dann sollte Dein Code aber so aussehen:
        <table border="1" width="100%" height="80%">
          <tr>
            <td height="5%">..</td>
            <td>..</td>
            <td>..</td>
            <td>..</td>
            <td rowspan="2" colspan="3">..</td>
          </tr>
          <tr>
            <td height="80%" colspan="4">
          </tr>
          <tr>
            <td height="15%">..</td>
            <td>..</td>
            <td>..</td>
            <td>..</td>
            <td>..</td>
            <td>..</td>
            <td>..</td>
          </tr>
        </table>

        Muß ich jetzt bei der Aufteilung mit der größe des Schirms, oder der Tab rechnen?

        Mit der Größe der Tabelle mußt du dann rechnen, da sich die Prozentangabe immer auf das übergeordnete Element bezieht. D.h. die Prozentangabe der Tabelle bezieht sich auf das Fenster, die Angabe bei den Tabellenzellen auf die Tabelle.

        HTH Markus

  2. bin gerade dabei mir ne Tabelle zu basteln und will den Zellen jetzt eine Höhe in % zuweisen. Klappt aber nicht. Die Tab. sieht so aus:

    <table border="1" width="100%" height="80%">
    <tr >
      <td height="5%">xyz</td>
      <td  >xyz</td>
      <td  >xyz</td>
      <td  >xyz</td>
       <td colspan="3" rowspan="2" align="right" width="43%"
        height="60"><img src="*.gif" ></td>
    </tr>
    <tr>
       <td colspan="4" width="55%" height="58%">abc</td>
    </tr>

    <tr> vergessen.

    <td width="14%" height="15%>qwe</td>
      <td><img src="*.gif"></td>
      <td><img src="*.gif"></td>
      <td><img src="*.gif"></td>
      <td><img src="*.gif"></td>
      <td><img src="*.gif"></td>
      <td><img src="*.gif"></td>
    </tr>
    </table>

    a) Die Interpretation von HTML-Höhen und -Breiten bei Tabellen ist grundsätzlich als Mysterium anzusehen. Wenn das Wetter schön ist, wird da schonmal Parameter Parameter sein gelassen und lustig ein wenig hin und her geschoben.

    b) Die Gesamtprozentzahl der Höhe aus den drei Reihen ergibt bei dir 5+58+15=78%. Wo soll der Browser denn die restlichen hinstecken Selbiges gilt übrigens auch für die Breiten: 43+55=98 und 7*14=98.
    Auf Hundert solltest du schon irgendwie rauskommen.

    c) Das Mischen von relativen (%) und absoluten (Pixeln) Höhenangaben, wie bei dir in der ersten Reihe, funktioniert eher selten bis garnicht. Browser übernehmen, unter Rücksicht auf a), nur einen von beiden.

    d) Es kümmt vor, daß ein Browser sich nicht in der Lage sieht, Zellen, die nur eine Grafik enthalten, auszudehnen. Diese Zellen behalten dann in jedem Fall die Größe der Grafik und es wird stattdessen irgendwo anders gestreckt.

    Wenn es um Layout-Aufgaben geht, kannst du dir mit CSS-Positionierung helfen.

    Gruß,
      soenk.e