Daniel unreg: Warum Tabellen für Layouts einfach nicht geeignet sind

Beitrag lesen

Hallo,

Es wird ja nun hier auf SELFHTML, SELFHTML Forum und auch in vielen anderen Foren und vielen anderen Seiten "gepredigt", statt Tabellen lieber Divisionen einzusetzen (oder andere Elemente, je nach Einsatzzweck) und diese mit CSS wie gewünscht zu formatieren.

Es wird nichts gepredigt, der gesunde Menschenverstand gewinnt einfach an Bedeutung. Tabellen fürs Layout zu benutzen ist wie... ein Haus zu bauen um Plakate anbringen zu können.

[...] Entwickler wünschen sich, [...] Weiterhin wird sich gewünscht [...]

Nun ja, Menschen sind Gewohnheitstiere. Und wenn man 3/4 der Zeit, seit es das Web gibt, mit Tabellen gearbeitet hat, fällt es natürlich schwer sich von dieser Spalten-und-Zeilen-Denkweise zu verabscheiden.

Wenn man - um einen Footer am Boden eines Dokuments zu platzieren - zusätzliche (sinnfreie, nur zur Formatierung vorhandene) Elemente (z.B. Divisionen) braucht, u.a. einen großen Container und ein "gecleartes" Element, wo bleiben dann die Vorteile? Die Semantik geht kaputt.

Stimmt, CSS erfordert manchmal Elemente fürs Layout. Diese Elemente sind aber fast immer leer und für den Inhalt bzw. ein simples Ausgabeprogramm ohne Bedeutung.

Warum dann nicht eine Tabelle einsetzen?

Tabellen verändern die Bedeutung des Inhalts. Tabellen sind ein Hindernis, wenn es darum geht nicht-tabellarische Informationen an den Menschen zu übermitteln.

Zudem kann ein simples Ausgabeprogramm den Tabelleninhalt nicht benutzerfreundlich Wiedergeben.

Die Vorteile sind nicht nur das schnellere Entwickeln (ja, es _geht_ schneller) und die bessere Browserkompatibilität, sondern es lassen sich immernoch Funktion und Layout voneinander trennen.

Geschwindigkeit zeigt sich in der Regel durch die Erfahrung des Autors.

Trennt man nicht Information und Layout? Das kann die Tabelle bei nicht-tabellarischen Informationen nicht.

Eine andere Möglichkeit, sind optische Effekte (faux columns). Aber wir müssen bedenken: warum wollten wir nochmal von den Tabellen weg? Achja, die Semankik. Aber wo bleibt die, wenn sich die Elemente gar nicht so verhalten, wie wir wollen sondern nur so aussehen? Das tun die Tabellen doch auch.

Diesen Punkt verstehe ich nicht ganz. Bitte bedenke: Was aussieht wie eine Tabelle hat nicht die Bedeutung einer Tabelle. Es ist idiotisch, wenn jemand auf eine Tabelle verzichtet, obwohl tabellarische Daten vorhanden sind. Aber vorhandene Informationen als Tabelle zu gestalten ohne die Bedeutung einer Tabelle zu integrieren ist der entscheidende Unterschied in der Art der Gestaltung.

Einfacher: Während <table> nicht für Zwecke des Layouts geeignet ist, eignet sich display:table; umsomehr.

Nun kann man darüber streiten, ob es "schlimmer" ist, eine Tabelle zur Formatierung einzusetzen oder etliche sinnfreie überflüssige Divisionen in Quelltext zu haben, die letztendlich auch nur der Formatierung dienen, obwohl wir genau _das_ verhindern wollten.

Nun, MarkUp-Bestandteile fürs Layout sind anscheinend notwendig. Ich denke allerdings, dass du mit "etliche" übertreibst. Ein paar sind schon notwendig, aber diese haben Vorteile gegenüber Tabellen, z.B. sparen sie mehr Code und beeinflussen nicht die Art und Qualität des Inhalts.

Ich sage deshalb: benutzt Tabellen, statt CSS, wenn es mit CSS nicht semantischer geht als mit Tabellen. Und bis das W3C und die Browserhersteller es endlich geschafft haben, ein vernünftiges Modell auf die Beine zu stellen, sollten wir in solchen Fällen bei den Tabellen bleiben.

Was der Bauer nicht kennt, frisst er nicht? Fällt mir spontan ein.

CSS ist durchaus ein vernünftiges Modell. Nur befinden wir uns leider nicht mehr im letzte Jahrzeht, als die Browser noch innerhalb weniger Monate große Schritte gemacht haben.

Gruß

0 167

Warum Tabellen für Layouts manchmal besser als CSS sind

Die_Antwort
  • design/layout
  1. 0
    Kai345
    1. 0
      Die_Antwort
      1. 0
        Stefan Einspender
      2. 0
        Kai345
        1. 0
          Die_Antwort
          1. 0
            ChrisB
  2. 0
    Stefan Einspender
    1. 0
      Stefan Einspender
    2. 0
      Engin
    3. 0
      Die_Antwort
      1. 0
        molily
        1. 0
          Die_Antwort
          1. 0
            molily
            1. 0
              Die_Antwort
              1. 0
                molily
          2. 0
            Gunther
      2. 0
        Stefan Einspender
        1. 0
          Die_Antwort
          1. 0
            Gunther
            1. 0
              Klawischnigg
              1. 0
                Daniel unreg
                1. 0
                  Klawischnigg
                  1. 0
                    Kai345
                    1. 0
                      Klawischnigg
                      1. 0
                        Daniel unreg
                  2. 0
                    Stefan Einspender
                    1. 0
                      ChrisB
                      1. 0
                        molily
                        1. 0
                          ChrisB
                          1. 0
                            Gunther
                            1. 0
                              ChrisB
                          2. 0
                            molily
                    2. 0
                      Klawischnigg
                      1. 0
                        Timo "God's Boss" Reitz
                        1. 0
                          Klawischnigg
                          1. 0
                            Timo "God's Boss" Reitz
              2. 0
                Timo "God's Boss" Reitz
            2. 0
              ChrisB
      3. 0
        Sven Rautenberg
        1. 0
          Die_Antwort
          1. 3
            Sven Rautenberg
            1. 0
              Daniel unreg
            2. 0
              Die_Antwort
              1. 0
                ChrisB
                1. 0
                  Die_Antwort
                  1. 0
                    ChrisB
                  2. 0
                    molily
              2. 0
                Sven Rautenberg
  3. 0
    Heinz
    1. 0
      Daniel unreg
    2. 0
      ChrisB
      1. 0
        Daniel unreg
  4. 0

    Warum Tabellen für Layouts einfach nicht geeignet sind

    Daniel unreg
    1. 0
      Die_Antwort
      1. 0
        Daniel unreg
        1. 0
          Die_Antwort
          1. 0
            Daniel unreg
            1. 0
              Die_Antwort
              1. 0
                Daniel unreg
                1. 0
                  Die_Antwort
                  1. 0
                    Detlef G.
                  2. 0
                    Daniel unreg
                  3. 0
                    ChrisB
                    1. 0
                      Die_Antwort
                      1. 0
                        ChrisB
                        1. 0
                          Die_Antwort
                          1. 0
                            ChrisB
                            1. 0
                              Die_Antwort
                              1. 0
                                ChrisB
                                1. 0
                                  Die_Antwort
                                  1. 0
                                    ChrisB
                      2. 1
                        Detlef G.
                        1. 0
                          Die_Antwort
                          1. 0
                            ChrisB
                            1. 0
                              Die_Antwort
                          2. 0
                            Detlef G.
                            1. 0
                              Die_Antwort
                              1. 0
                                Struppi
              2. 0
                ChrisB
                1. 0
                  Die_Antwort
                  1. 0
                    ChrisB
                    1. 0
                      Die_Antwort
                      1. 0
                        ChrisB
                        1. 0
                          Die_Antwort
                          1. 0
                            Sven Rautenberg
                            1. 0
                              Die_Antwort
                          2. 0
                            Daniel unreg
      2. 0
        ChrisB
  5. 1
    stareagle
    1. 0
      Daniel unreg
  6. 2
    Struppi
  7. 0
    Gunther
    1. 0
      ChrisB
  8. 3

    Warum Tabellen für Layouts häufig besser als <div> sind

    Gonzo
    1. 0
      molily
      1. 0
        Gunther
      2. 0
        Gonzo
        1. 0
          Sven Rautenberg
          1. 0
            Gonzo
            1. 1
              molily
            2. 0
              molily
        2. 4
          molily
    2. 0
      Die_Antwort
      1. 0
        Gonzo
        1. 0
          Daniel unreg
        2. 0
          Die_Antwort
          1. 0
            Detlef G.
          2. 0
            ChrisB
            1. 0
              Die_Antwort
              1. 0
                ChrisB
                1. 0
                  Die_Antwort
                  1. 0
                    ChrisB
                    1. 0
                      Die_Antwort
                      1. 0
                        ChrisB
                        1. 0
                          Die_Antwort
                          1. 0
                            ChrisB
                            1. 0
                              Die_Antwort
                              1. 0
                                ChrisB
                                1. 0
                                  Die_Antwort
              2. 1
                Sven Rautenberg
                1. 0
                  Die_Antwort
      2. 0
        ChrisB
    3. 0
      Klawischnigg
      1. 0
        Gonzo
        1. 0
          Klawischnigg
  9. 0
    molily
    1. 0
      Die_Antwort
  10. -1
    Klawischnigg
    1. 0
      molily
      1. 0
        Klawischnigg
        1. 0
          molily
          1. 0
            Klawischnigg
            1. 0
              molily
              1. 0
                Klawischnigg
            2. 0
              Struppi
              1. 0
                Klawischnigg
  11. 0

    Was HTML nicht ist

    Robert Bienert
    1. 0
      Die_Antwort
      1. 0
        Stefan Einspender
        1. 0
          Die_Antwort
          1. 0
            Struppi
      2. 0
        Detlef G.
      3. 0
        Robert Bienert
  12. 0

    Überlauf verhindern und stattdessen das Element vergrößern (2)

    Christian Seiler
    • css
    1. 0
      Gunther
  13. 0

    MAL EIN BEISPIEL

    Johann
    1. 0
      Die_Antwort
      1. 0
        ChrisB
        1. 0
          Die_Antwort
          1. 0
            ChrisB
            1. 0
              Die_Antwort
              1. 0
                ChrisB
              2. 0
                Stefan Einspender
          2. 0
            Sven Rautenberg
            1. 0
              Die_Antwort
              1. 0
                ChrisB
              2. 0
                Sven Rautenberg
    2. 0

      MAL KEIN BEISPIEL

      Detlef G.
      1. 0

        Beispiele verlinken nicht erlaubt?

        Johann
        1. 0
          Steel
  14. 2

    Don't feed ...

    Gunther
    • meinung
    1. 0
      Die_Antwort
      1. 0
        ChrisB
        1. 0
          Die_Antwort
    2. 0
      Heinz
  15. 3
    Jeena Paradies