Ralf: Tabelle: Spalte1 -> 2 Zeilen; Spalte2 -> 1 Z.; Spalte3 -> 3 Z.

Ich möchte eine Tabelle mit drei Spalten anlegen.
Die erste Spalte hat 3 Zeilen, die zweite hat eine Zeile und die dritte hat drei Zeilen.

Ich kam auf die Idee, dass man es so hinbekommen kann, dass man eine Tabelle mit sechs Zeilen erzeugt, wo entsprechnd die Zeile via rowspan zusammengefasst werdern. Leider scheint das nicht so zu funktionieren, wie ich es gerne gehabt hätte. Unten ist der Code des gescheiterten Versuchs zu sehen.

<table border="1">
<tr>
<td rowspan="3">Zelle11</td><td rowspan="6">Zelle12</td><td rowspan="2">Zelle13</td>
</tr>
<tr>
<td rowspan="3">Zelle21</td><td rowspan="2">Zelle23</td>
</tr>
<tr>
<td rowspan="2">Zelle33</td>
</tr>
</table>

  1. @@Ralf:

    nuqneH

    Ich möchte eine Tabelle mit drei Spalten anlegen.
    Die erste Spalte hat 3 Zeilen, die zweite hat eine Zeile und die dritte hat drei Zeilen.

    Und welchen Sinn sollte eine solche Tabelle haben? Gewiss nicht den, tabellarische Daten zu beïnhalten.

    Zum Layouten sind Tabellen ungeeigent.

    Geeignet sind <http://de.selfhtml.org/css/layouts/mehrspaltige.htm@title=mehrspaltige CSS-basierte Layouts>.

    Qapla'

    --
    Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)
    1. Gefragt ist wirklich nach einer Tabelle und keine missbräuchliche Verwendung von Tabellen. Die Tabelle soll wirklich solche Daten enthalten.
      Für das Design der Tabelle bin ich nicht verantwortlich und somit bin ich für eine Diskussion der Sinnhaftigkeit einer solchen Tabelle nicht die richtige Adresse.

      1. @@Ralf:

        nuqneH

        Gefragt ist wirklich nach einer Tabelle und keine missbräuchliche Verwendung von Tabellen. Die Tabelle soll wirklich solche Daten enthalten.

        Wenn du die Daten mal zeigen würdest, könnte dir vielleicht geholfen werden.

        Qapla'

        --
        Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)
        1. Die Tabelle wird über ein JSP-File erzeugt, daher kann ich mit den scharfen Daten nicht dienen. Als Referenzproblem sollte das Beispiel im Ursprungsposting eigentlich reichen.

          Wie es aussieht, muss ich eine Tabelle mit drei Spalten und einer Zeile bauen und innerhalb der Zellen wieder andere Tabellen einbauen.

          Ach so, im Endeffekt ist es nicht eine Zeile, sondern es sind <i>n</i> Zeilen, aber das ändert das Problem nicht.

          1. Hi Ralf,

            Wie es aussieht, muss ich eine Tabelle mit drei Spalten und einer Zeile bauen und innerhalb der Zellen wieder andere Tabellen einbauen.

            deine Idee, eine Tabelle mit sechs Zeilen zu machen, klang doch ganz gut. Warum hast Du dann stattdessen eine Tabelle mit nur drei Zeilen gemacht?

            Viele Gruesse,
            der Bademeister

            1. deine Idee, eine Tabelle mit sechs Zeilen zu machen, klang doch ganz gut.

              Scheint aber auch nur so zu klingen. Ich habs gerade mal hingeschrieben. Die Tabelle waere dann die folgende.

                
              <table>  
              <tr><td rowspan = "3">1</td>  
                  <td rowspan = "6">2</td>  
                  <td rowspan = "2">3</td></tr>  
              <tr></tr>  
              <tr><td rowspan = "2">4</td></tr>  
              <tr><td rowspan = "3">5</td></tr>  
              <tr><td rowspan = "2">6</td></tr>  
              <tr></tr>  
              </table>  
              
              

              Und siehe da, diese ist invalide, weil sie leere <tr>-Elemente beinhaltet. [Spezifikation].

              Hat die Notwendigkeit einer Tabellenzeile, Zellen zu beinhalten, einen vernuenftigen Sinn (der obigem Beispiel standhaelt), oder hat da nur jemand nicht richtig nachgedacht?

              Viele Gruesse,
              der Bademeister

              1. Hat die Notwendigkeit einer Tabellenzeile, Zellen zu beinhalten, einen vernuenftigen Sinn (der obigem Beispiel standhaelt), oder hat da nur jemand nicht richtig nachgedacht?

                Anwort: Beides. Sie hat ihren Sinn, und ich hab nicht richtig nachgedacht :-)

                Die leeren Zellen kann man natuerlich problemlos wegbekommen. Deine Tabelle, Ralf, sollte dann also am Ende nur vier Zeilen haben.

                Viele Gruesse,
                der Bademeister

                1. Hallo Bademeister,
                  ich habe mal mit einem kleinen WYSIWYG-HTML-Editor die Tabelle erzeugt und das Ergbenis sieht so aus:

                  <table>
                      <tr>
                          <td>AAA</td>
                          <td rowspan="4">DDD</td>
                          <td rowspan="2">EEE</td>
                      </tr>
                      <tr>
                          <td rowspan="2">BBB</td>
                      </tr>
                      <tr>
                          <td rowspan="2">FFF</td>
                      </tr>
                      <tr>
                          <td>CCC</td>
                      </tr>
                  </table>

                  Mit so etwas hätte ich nun überhaupt nicht gerechnet!

                  1. Hallo,

                    ich hab' mich von Deiner Problemstellung im Ausgangsbeitrag irreführen lassen und das Thema gar nicht wahrgenommen.

                    ich habe mal mit einem kleinen WYSIWYG-HTML-Editor die Tabelle erzeugt und das Ergbenis sieht so aus:

                    <table>
                        <tr>
                            <td>AAA</td>
                            <td rowspan="4">DDD</td>
                            <td rowspan="2">EEE</td>
                        </tr>
                        <tr>
                            <td rowspan="2">BBB</td>
                        </tr>
                        <tr>
                            <td rowspan="2">FFF</td>
                        </tr>
                        <tr>
                            <td>CCC</td>
                        </tr>
                    </table>

                    gibt in der ersten Spalte 3 Zeilen (wie im Ausgangsbeitrag), nicht 2 wie im Thema, in der zweiten 1 Zeile (in beiden Fällen ok) und 2 Zeilen in der 3. Spalte (sowohl im Thema als auch im Ausgangsbeitrag wolltest Du 2 haben).
                    Sei's drum.

                    Beachte: Wenn die Höhe von Zeilen durch verbundene Zellen vorgegeben wird, wird die Darstellung uneinheitlich, was durch den CSS-Standard durchaus erlaubt ist, sieh' Dir dazu folgendes in unterschiedlichen Browsern an:

                    <table>  
                        <tr>  
                            <td>AAA</td>  
                            <td rowspan="4">DDD<br>DDD<br>DDD<br>DDD<br>DDD<br>DDD<br>DDD<br>DDD</td>  
                            <td rowspan="2">EEE</td>  
                        </tr>  
                        <tr>  
                            <td rowspan="2">BBB<br>BBB<br>BBB<br>BBB<br>BBB<br>BBB<br>BBB</td>  
                        </tr>  
                        <tr>  
                            <td rowspan="2">FFF</td>  
                        </tr>  
                        <tr>  
                            <td>CCC</td>  
                        </tr>  
                    </table>
                    

                    Semantik bleibt jetzt mal ganz außen vor :-)

                    Freundliche Grüße

                    Vinzenz

          2. @@Ralf:

            nuqneH

            Die Tabelle wird über ein JSP-File erzeugt, daher kann ich mit den scharfen Daten nicht dienen.

            Beispieldaten wären genug. Womit nicht foo, bar, baz oder Lorem ipsum gemeint ist …

            Als Referenzproblem sollte das Beispiel im Ursprungsposting eigentlich reichen.

            … nein, auch nicht Zelle42.

            Gehören die Daten in Zelle 23 zu denen in Zelle 11 oder zu denen in Zelle 21?

            Und warum sollten sich Zellen 13 und 33 über 2 Tabellenzeilen erstrecken, wenn es doch gar keine einzeiligen Zellen gibt?

            Meine Zeifel, ob es sich um tabellarische Daten handelt, sind noch nicht zerstreut.

            Qapla'

            --
            Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)
    2. Hi Gunnar,

      Ich möchte eine Tabelle mit drei Spalten anlegen.
      Die erste Spalte hat 3 Zeilen, die zweite hat eine Zeile und die dritte hat drei Zeilen.

      Und welchen Sinn sollte eine solche Tabelle haben? Gewiss nicht den, tabellarische Daten zu beïnhalten.

      wieso?

      Viele Gruesse,
      der Bademeister

  2. Ich möchte eine Tabelle mit drei Spalten anlegen.
    Die erste Spalte hat 3 Zeilen, die zweite hat eine Zeile und die dritte hat drei Zeilen.

    Warum dann 6 Zeilen anlegen?
    Vielleicht so:

      
    <table>  
      <tr>  
        <td></td><td rowspan="3"></td><td></td>  
      </tr>  
      <tr>  
        <td></td><td></td><td></td>  
      </tr>  
      <tr>  
        <td></td><td></td><td></td>  
      </tr>  
    </table>  
    
    

    Ich hoffe das ist hilfreich - wofür auch immer Du eine Tabelle brauchst (*zwinker* Gunnar)

    Gruß vom foomaker

    --
    Ändere, was Du ändern kannst.
    Akzeptiere, was Du nicht ändern kannst.
    Lerne, das eine vom anderen zu unterscheiden.
    1. Hallo,

      Warum dann 6 Zeilen anlegen?

      völlig richtig, völlig überflüssig.

      Vielleicht so:

      <table>
        <tr>
          <td></td><td rowspan="3"></td><td></td>
        </tr>
        <tr>
          <td></td><td></td><td></td>
        </tr>
        <tr>
          <td></td><td></td><td></td>
        </tr>
      </table>

        
      fast. Du hast in der zweiten und dritten Zeile eine Zelle zuviel. Die Tabelle hat drei Spalten. Eine davon ist bereits über rowspan gefüllt. Deswegen genügen jeweils zwei Zellen, um die weiteren Zeilen zu füllen.  
        
        
      Freundliche Grüße  
        
      Vinzenz
      
      1. Stimmt.

        Danke.

        Gruß vom foomaker

        --
        Ändere, was Du ändern kannst.
        Akzeptiere, was Du nicht ändern kannst.
        Lerne, das eine vom anderen zu unterscheiden.
  3. Hallo,

    Ich möchte eine Tabelle mit drei Spalten anlegen.
    Die erste Spalte hat 3 Zeilen, die zweite hat eine Zeile und die dritte hat drei Zeilen.

    wo ist das Problem?

    In der ersten Zeile bekommt die mittlere Zelle ein rowspan von drei und geht somit über alle drei Zeilen. Die zweite und dritte Zeile tauchen nur in Spalte 1 und 3 auf.

    <table>  
        <tr>  
            <td>11</td>  
            <td rowspan="3">21</td>  
            <td>31</td>  
        </tr>  
        <tr>  
            <td>12</td>  
            <td>32</td>  
        </tr>  
        <tr>  
            <td>13</td>  
            <td>33</td>  
        </tr>  
    </table>
    

    Ich wüßte wirklich nicht, warum man für maximal drei Zeilen sechs Zeilen verwenden sollte. Das Ergebnis ist exakt das, was Du forderst:

    • die erste Spalte hat drei Zeilen
    • die zweite Spalte hat eine Zeile
    • die dritte Spalte hat drei Zeilen

    Freundliche Grüße

    Vinzenz