Alicja: verschachtelte Tabellen und height-Angaben

Ich brauch Hilfe bei meiner Tabelle. Also die Tabelle besteht aus 2 Spalten. In jeder von diesen Spalten gibt es wieder eine Tabelle.
Was ich erreichen möchte ist, dass wenn die Tabelle in der rechten Spalte aufgrund des Inhalts lang wird, soll sich die Tabelle in der linken Spalte genauso ausstrecken. Ich habe schon mit height="100%" bei der table, td, tr, sogar einem transparentem GIF versucht. Keine Wirkung. Es scheint als ob verschachtelte Tabellen die %-Angaben ignorieren würden.
Der Code (vereinfacht) sieht so aus:
<table id="haupttabelle">
<tr>
 <td>
  <table id="linketabelle">
  <tr>
   <td></td>
  </tr>
  </table>
 </td>
 <td>
  <table id="rechtetabelle">
  <tr>
   <td></td>
  </tr>
  </table>
 </td>
</tr>
</table>

Kennt vielleicht jemand ein Trick mit dem man das Lösen kann? Ich wäre sehr Dankbar!

  1. Ich brauch Hilfe bei meiner Tabelle. Also die Tabelle besteht aus 2 Spalten. In jeder von diesen Spalten gibt es wieder eine Tabelle.
    Was ich erreichen möchte ist, dass wenn die Tabelle in der rechten Spalte aufgrund des Inhalts lang wird, soll sich die Tabelle in der linken Spalte genauso ausstrecken. Ich habe schon mit height="100%" bei der table, td, tr, sogar einem transparentem GIF versucht. Keine Wirkung. Es scheint als ob verschachtelte Tabellen die %-Angaben ignorieren würden.

    Hallo Alicja!

    Ich glaube es liegt dadran das du ein Doctype oben in der DAtei stehen hast, wenn ja nimm es raus, dann müsste es klappen!

    1. Ich glaube es liegt dadran das du ein Doctype oben in der DAtei stehen hast, wenn ja nimm es raus, dann müsste es klappen!

      Habe Doctype rausgenommen, das hat aber auch nicht geholfen.

  2. Hi Alicja:

    Wenn ich das Problem richtig verstanden habe, dann dürfte die Lösung sein, in den <td>s der Haupttabelle eine relative Breite von 50% anzugeben, wie in diesen beiden Beispielen:

    <table id="haupttabelle1" border=1>
    <tr>
     <td width="50%">
      <table id="linketabelle" width="100%">
      <tr>
       <td> </td>
      </tr>
      </table>
     </td>
     <td width="50%">
      <table id="rechtetabelle" width="100%">
      <tr>
       <td>Inhalt rechts</td>
      </tr>
      </table>
     </td>
    </tr>
    </table>

    <table id="haupttabelle2" border=1>
    <tr>
     <td width="50%">
      <table id="linketabelle2" width="100%">
      <tr>
       <td> </td>
      </tr>
      </table>
     </td>
     <td width="50%">
      <table id="rechtetabelle2" width="100%">
      <tr>
       <td>Inhalt rechts breiter</td>
      </tr>
      </table>
     </td>
    </tr>
    </table>

    Die inneren Tabellen dann immer auf 100% und es müsste gehen.

    Grüße, Michael (akna "Hirschkäfer")

    1. Wenn ich das Problem richtig verstanden habe, dann dürfte die Lösung sein, in den <td>s der Haupttabelle eine relative Breite von 50% anzugeben, wie in diesen beiden Beispielen:

      Yo! Ist schon richtig aber das Problem bereitet die Höhe nicht die Breite.

      1. Yo! Ist schon richtig aber das Problem bereitet die Höhe nicht die Breite.

        Hi Alicja,

        wenn es mir relativen Angaben in HTML nicht geht, warum arbeitest Du nicht mit absoluten Angaben zur Höhe? Wenn es mit HTML nicht klappt gibt es sicherlich ein Workarround mit CSS.

        Wozu muss die linke verschachtelte Tabelle unbedingt sein und warum muss sie variabel sein. Kannst Du das genauer erklären oder einen Verweis zu der betreffenden Seite geben?

        CU
        Jens

  3. MoiN!

    Was ich erreichen möchte ist, dass wenn die Tabelle in der rechten Spalte aufgrund des Inhalts lang wird, soll sich die Tabelle in der linken Spalte genauso ausstrecken. Ich habe schon mit height="100%" bei der table, td, tr, sogar einem transparentem GIF versucht. Keine Wirkung. Es scheint als ob verschachtelte Tabellen die %-Angaben ignorieren würden.

    Das Problem ist, daß HTML im Standard garkeine Angabe "height" vorgesehen hat. Wenn Browser es trotzdem interpretieren, dann sind sie kaputt.

    Deine bisherigen Angaben waren nicht so erschöpfend, daß ichahnen konnte, was du wirklich willst. Gewöhnlicherweise kann die Tabelle, wenn sie sich streckt, ja nur mit Hintergrundfarbe gefüllt werden.

    Du hast aber schon ein Tabellenelement, welches so groß ist, wie du möchtest: Das ist die linke Zelle, welche eben jede linke Tabelle enthält. Wenn du dort einfach den farblichen Effekt einsetzt, ist dein Problem keins mehr.

    Ansonsten erkläre bitte genauer, was du erreichen willst.

    - Sven Rautenberg

    1. MoiN!

      Was ich erreichen möchte ist, dass wenn die Tabelle in der rechten Spalte aufgrund des Inhalts lang wird, soll sich die Tabelle in der linken Spalte genauso ausstrecken. Ich habe schon mit height="100%" bei der table, td, tr, sogar einem transparentem GIF versucht. Keine Wirkung. Es scheint als ob verschachtelte Tabellen die %-Angaben ignorieren würden.

      Das Problem ist, daß HTML im Standard garkeine Angabe "height" vorgesehen hat. Wenn Browser es trotzdem interpretieren, dann sind sie kaputt.

      Genauer gesagt, nicht für table, tr aber in td ist es erlaubt http://selfhtml.teamone.de/html/referenz/attribute.htm#td

      Clemens

  4. Was ich erreichen möchte ist, dass wenn die Tabelle in der rechten Spalte aufgrund des Inhalts lang wird, soll sich die Tabelle in der linken Spalte genauso ausstrecken. Ich habe schon mit height="100%" bei der table, td, tr, sogar einem transparentem GIF versucht. Keine Wirkung. Es scheint als ob verschachtelte Tabellen die %-Angaben ignorieren würden.

    so geht's:
    1. über CSS am body height:100% festlegen - sonst gehen %-Angaben auf oberster Ebene in's Leere
    2. % gilt grundsätzlich gegenüber dem übergeordneten Element (vor längerer Zeit haben einige Browser da mist gemacht, aber das ist längst vergessen - weiß das einer genauer?)

    btw. die height-Angaben über HTML sind sehr verbreitet, gehören aber NICHT zum HTML-Standard und werden von keinem aktuellen Browser mehr unterstützt - beim IE6 (Strict mode) hat das Ding soweit ich weiß die gleiche Vorbedingung (body über CSS auf height:100%). evtl. wird's sogar ganz ignoriert