Frank: Tabellen def.

Hallo

Dies ist mal eine allgemeine Frage für die ich leider in selfhtml keine Antwort finde.

Wie ist das mit der Anwendung von Tabellen und relativen Größenangaben (width="100%" etc.)

Es funktioniert ja ganz gut solange man nur das als Angabe macht. Jedoch möchte ich sie mischen mit festen Werten (z.B.:width="100")

Ich würde gerne eine Tabelle erstellen die sich immer über das ganze Browserfenster erstreckt aber innerhalb der Tabelle bei einzelnen Zellen feste Werte hat die auch nicht verändert werden sollen. Am Abschluss der seite (rechts) soll dann eine Zelle sein die den Rest des übriggebliebenen Platzes einnimmt.

Ich glaube allerdings, daß die nutzung von festen Größen wie width="100" in verbindung mit relativen Größen nicht funktioniert.

Leider finde ich keine Informationen dazu und hoffe das ich von Euch etwas erfahren kann.
Vielleicht hat ja schon der ein oder andere mit dem gleichen Problem herumgekämpft und ist auf eine gute Möglichkeit gekommen das Problem zu lösen oder zu umgehen.
Je weniger JS oder Stylesheets benutzt werden müssen desto besser.

Gruß
Frank

  1. hi!

    Wie ist das mit der Anwendung von Tabellen und relativen
    Größenangaben (width="100%" etc.)
    Es funktioniert ja ganz gut solange man nur das als Angabe macht.
    Jedoch möchte ich sie mischen mit festen Werten (z.B.:width="100")
    Ich würde gerne eine Tabelle erstellen die sich immer über das
    ganze Browserfenster erstreckt aber innerhalb der Tabelle bei
    einzelnen Zellen feste Werte hat die auch nicht verändert werden
    sollen. Am Abschluss der seite (rechts) soll dann eine Zelle sein
    die den Rest des übriggebliebenen Platzes einnimmt.

    An deiner Stelle würde ich es mal mit einem blinden GIF verwenden,
    also ein transparentes 1x1 Pixel großes GIF-Bild.

    === cut ===
    <table width="100%">
      <tr>
        <td width="1%">
          <img src="tr.gif" width="100" height="1">
        </td>
        <td width="99%">
          ...viel text...
        </td>
      </tr>
    </table>
    === cut ===

    Eigentlich müsste dann die linke Spalte genau 100 Pixel breit sein,
    weil die Browser die Spalten automatisch vergrößern, wenn der Inhalt
    zu breit ist.

    Siehe dazu auch: <../../sfausles/tsfa_tac.htm#a2>

    bye, Frank!

    1. An deiner Stelle würde ich es mal mit einem blinden GIF verwenden,
      also ein transparentes 1x1 Pixel großes GIF-Bild.

      === cut ===
      <table width="100%">
        <tr>
          <td width="1%">
            <img src="tr.gif" width="100" height="1">
          </td>
          <td width="99%">
            ...viel text...
          </td>
        </tr>
      </table>
      === cut ===

      Eigentlich müsste dann die linke Spalte genau 100 Pixel breit sein,
      weil die Browser die Spalten automatisch vergrößern, wenn der Inhalt
      zu breit ist.

      Siehe dazu auch: <../../sfausles/tsfa_tac.htm#a2>

      Hallo
      Das klappt ganz gut solange in der Zelle keine Inhalte vorgesehen sind. Leider habe ich aber ein Problem mit einer verbundenen Zelle in der Text ist. Das Problem liegt glaube ich daran, dass Zellen mit der die Zelle verbunden ist vorher (in Zeilen drüber)mit anderen Zellen verbunden ist und dadurch überlappungen entstehen. Leider habe ich noch keine Lösung gefunden.
      Hier die genaue Problemstellung.
      http://www.teamone.de/selfaktuell/forum/messages/104755.html
      Wenn Du Ideen zu diesem Problem hast bitte schreib doch.
      Gruß
      Frank

  2. Hallo Frank,

    Ich würde gerne eine Tabelle erstellen die sich immer über das ganze Browserfenster erstreckt aber innerhalb der Tabelle bei einzelnen Zellen feste Werte hat die auch nicht verändert werden sollen. Am Abschluss der seite (rechts) soll dann eine Zelle sein die den Rest des übriggebliebenen Platzes einnimmt.

    dann mache es doch einfach. In der hier beschriebenen Form sehe ich
    da keine Probleme, baue das Teil zusamme und wenn etwas wirklich nicht
    so klappt, dann poste hier Dein Problem, nachdem Du mal in den auf
    <../> ganz oben aufgeführten Sachen nachgeschaut hast.

    Viele Grüße aus Dresden,
    Stefan Einspender

    <img src="http://www.favicon.de/_banner1.gif" title="Patchwork - die bunte Welt des WWW auf Favicon.de" style="cursor:hand;" onClick="window.location.href='http://www.favicon.de/patchwork/'" onmouseover="status='http://www.favicon.de/patchwork/';return true;" onmouseout="status='';return true;" alt="">

    1. dann mache es doch einfach. In der hier beschriebenen Form sehe ich
      da keine Probleme, baue das Teil zusamme und wenn etwas wirklich nicht
      so klappt, dann poste hier Dein Problem, nachdem Du mal in den auf
      <../> ganz oben aufgeführten Sachen nachgeschaut hast.

      Viele Grüße aus Dresden,
      Stefan Einspender

      Hallo Stefan

      bitte schau Dir doch mal dieses Posting an, denn das ist die Problemstellung die ich lösen will.
      http://www.teamone.de/selfaktuell/forum/messages/104755.html

      Gruß
      Frank

      1. Hallo Frank,

        <104755.html>

        ich habe jetzt mal etwas rumgebaut, der korrekte Quellcode für eine
        Tabelle wie bei http://mitglied.tripod.de/FGS25/tabelle.jpg zu sehen,
        lautet:

        <html>
        <head>
        <title>tabelle</title>
        </head>
        <body>
        <table border="1">
        <tr><td colspan="2"> </td>
           <td colspan="2" rowspan="2"> </td></tr>
        <tr><td colspan="2" rowspan="2"> </td></tr>
        <tr><td> </td>
           <td rowspan="3"> </td></tr>
        <tr><td colspan="3"> </td></tr>
        <tr><td> </td>
           <td> </td>
           <td> </td></tr>
            </table>
        </body>
        </html>

        Bitte poste jetzt genau dazu Dein Problem, dann werde ich sehen, wie
        ich Dir noch weiterhelfen kann.

        Viele Grüße aus Dresden,
        Stefan Einspender

        <img src="http://www.favicon.de/_banner1.gif" title="Patchwork - die bunte Welt des WWW auf Favicon.de" style="cursor:hand;" onClick="window.location.href='http://www.favicon.de/patchwork/'" onmouseover="status='http://www.favicon.de/patchwork/';return true;" onmouseout="status='';return true;" alt="">

        1. ich habe jetzt mal etwas rumgebaut, der korrekte Quellcode für eine
          Tabelle wie bei http://mitglied.tripod.de/FGS25/tabelle.jpg zu sehen,
          lautet:

          <html>
          <head>
          <title>tabelle</title>
          </head>
          <body>
          <table border="1">

          »»  <tr><td colspan="2"> </td>

          <td colspan="2" rowspan="2"> </td></tr>

          »»  <tr><td colspan="2" rowspan="2"> </td></tr>
          »»  <tr><td> </td>

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

          »»  <tr><td colspan="3"> </td></tr>
          »»  <tr><td> </td>

          <td> </td>
             <td> </td></tr>
              </table>
          </body>
          </html>

          Bitte poste jetzt genau dazu Dein Problem, dann werde ich sehen, wie
          ich Dir noch weiterhelfen kann.

          Viele Grüße aus Dresden,
          Stefan Einspender

          Hallo Stefan

          Das ist schon mal das richtige Grundgerüst.
          Nur bekomme ich Probleme sobald ich die Grafiken einbaue in den Größen wie in meinem HTML-Text von dem anderen Posting.
          Dort wo das Flash hinkommt ist die Zelle viel zu groß (automatisch, da sie nicht angepasst wird). Das Problem hatte ich gelöst indem ich width="1%" angegeben hatte.
          Jedoch ist die verbundenen Zellen dadrunter (Menü) immer zu breit egal was ich dort für Angaben mache.
          Ich habe schon (meiner Meinung nach) alles ausprobiert. Nobreakingspace, relative und absolute Angaben, ja ich habe sogar unter stylesheets nach Lösungen gesucht bin aber nicht fündig geworden.

          Siehst Du denn noch eine Möglichkeit?
          Der HTML-Text aus dem anderen Posting ist ziemlich nah dran an dem was es mal werden soll (IE5 zeigt es 100% richtig an).
          Ok die erste Spalte zb.: kann man sich schenken. Ich hatte sie aus designtechnischen Gründen eingebaut.
          Ich würde mich sehr freuen wenn Du noch eine Idee hast.
          Gruß
          Frank

          1. Hallo Frank,

            bitte speichere den Quellcode hier mal als Datei ab und fange an,
            hier Deine Sachen einzubauen, vielleicht kommst Du so weiter:

            <html>
            <head>
            <title>tabelle</title>
            </head>
            <body>
            <table border="1" cellpadding="0" cellspacing="0" height="300" width="750">
            <tr height="50"><td colspan="2" width="100"> </td>
               <td colspan="2" height="50" width="650"> </td></tr>
            <tr height="50"><td colspan="2" rowspan="2" width="100"> </td>
               <td colspan="2" height="50" width="650"> </td></tr>
            <tr height="100"><td height="100" width="50"> </td>
               <td rowspan="3" width="600"> </td></tr>
            <tr height="50"><td colspan="3" height="50" width="150"> </td></tr>
            <tr height="50"><td width="50"> </td>
               <td width="50"> </td>
               <td height="50" width="50"> </td></tr>
                </table>
            </body>
            </html>

            Die obere rechte (lange) Zelle mußte ich teilen, da sonst die ganze
            Sache nicht die richtige Form bekommen hat, ansonsten entspricht es
            der Bildvorlage.
            Dein Code aus <104755.html> ist, mit Verlaub gesagt, Schwachsinn,
            da fehlen Zellen in den Zeilen, d.h. wenn es der IE anzeigt, dann nur
            aus sehr großer Fehlertoleranz, richtig und sinnvoll ist es keines-
            falls.

            Überlege Dir genau, was Du an dem Code oben veränderst und wenn an
            irgendeiner Stelle etwas verschoben wird, dann hilft Dir vielleicht
            eine stabilisierende Strebe weiter (unsichtbares GIF).

            Viel Erfolg, versuche es einfach noch einmal, sonst solltest Du viel-
            leicht erst einmal Abstand von derartig komplexen Tabellenlayouts
            nehmen.

            Viele Grüße aus Dresden,
            Stefan Einspender

            <img src="http://www.favicon.de/_banner1.gif" title="Patchwork - die bunte Welt des WWW auf Favicon.de" style="cursor:hand;" onClick="window.location.href='http://www.favicon.de/patchwork/'" onmouseover="status='http://www.favicon.de/patchwork/';return true;" onmouseout="status='';return true;" alt="">

            1. Hallo Stefan!

              Herzlichen Glückwunsch!

              Ich habe selten eine so - mit Verlaub gesagt - hingerotzte Antwort gesehen, wie die deinige.

              Zum einem stellst du Frank als Idioten hin, ...

              Dein Code aus <104755.html> ist, mit Verlaub gesagt, Schwachsinn,
              da fehlen Zellen in den Zeilen, d.h. wenn es der IE anzeigt, dann nur
              aus sehr großer Fehlertoleranz, richtig und sinnvoll ist es keines-
              falls.

              ... was nicht stimmt, denn es fehlen _keine_ Zellen in dem von Frank geposteten Quellcode!

              Zum anderen hast du mit dieser klitzekleinen Änderung ...

              Die obere rechte (lange) Zelle mußte ich teilen, da sonst die ganze
              Sache nicht die richtige Form bekommen hat, ansonsten entspricht es
              der Bildvorlage.

              ... das eigentliche Ziel völlig verfehlt.

              Genau dieses Zusammenfügen der zwei Zellen war nämlich durchaus beachsichtigt, wie man auch auf Frank Bild http://mitglied.tripod.de/FGS25/index.html gut erkennen kann.

              Ganz genaugenommen ist dies sogar der entscheidende Punkt, bei dem NS und Opera scheitern.

              Wie jetzt die letzten beiden Absätze ...

              Überlege Dir genau, was Du an dem Code oben veränderst und wenn an
              irgendeiner Stelle etwas verschoben wird, dann hilft Dir vielleicht
              eine stabilisierende Strebe weiter (unsichtbares GIF).

              Viel Erfolg, versuche es einfach noch einmal, sonst solltest Du viel-
              leicht erst einmal Abstand von derartig komplexen Tabellenlayouts
              nehmen.

              ... auf mich wirken, brauche ich dir hoffentlich nicht zu sagen.

              Ich betrachte das Problem auch weiterhin als nicht gelöst.

              Viele Grüße aus Emmerich,
              Jürgen Kerkhof

              1. Hallo Kerki,

                Ich habe selten eine so - mit Verlaub gesagt - hingerotzte Antwort gesehen, wie die deinige.

                zumindest war meine Antwort nicht mal nur so schnell hingetippt, ich
                habe mind. eine halbe Stunde probiert etc., bis ich erkennen mußte,
                dass diese Änderung notwendig ist. Von anderen Lösungen lasse ich
                mich gern überzeugen.

                Zum einem stellst du Frank als Idioten hin, ...

                Wenn es den Anschein hat, dann bitte ich um Entschuldigung.

                ... was nicht stimmt, denn es fehlen _keine_ Zellen in dem von Frank geposteten Quellcode!

                Diese Behauptung nehme ich hiermit zurück, war ganz eindeutig ein
                Fehler von meiner Seite, allerdings hat Frank, im Gegensatz zu der
                vorgegebenen Skizze, die erste Zelle links oben geteilt, ich habe
                dann eben stattdessen die Zelle rechts oben geteilt <g>

                Zum anderen hast du mit dieser klitzekleinen Änderung ...

                ... das eigentliche Ziel völlig verfehlt.

                Ja, aber da er eh zwei Tabelle untereinander in dieser Zelle an-
                ordnen will, ist es vielleicht möglich, die obere in die obere
                Hälfte der, von mir geteilten, Zelle und die untere unten rein zu
                bauen, eventuell lassen sich die Grafiken dementsprechend anpassen.

                Ganz genaugenommen ist dies sogar der entscheidende Punkt, bei dem NS und Opera scheitern.

                Warum hast Du dann in <104873.html> etwas ganz anderes vorgeschlagen? ;-)

                Viel Erfolg, versuche es einfach noch einmal, sonst solltest Du viel-
                leicht erst einmal Abstand von derartig komplexen Tabellenlayouts
                nehmen.

                ... auf mich wirken, brauche ich dir hoffentlich nicht zu sagen.

                Wie weiter oben gesagt, es lag hier ein Missverständnis von meiner
                Seite in Bezug auf den von Frank geposteten Code vor, dennoch sollte
                <td></td> vermieden werden, da gehört   o.ä. rein!

                Ich betrachte das Problem auch weiterhin als nicht gelöst.

                Falls die beiden, in seinem geposteten Code enthaltenen, Tabellen in
                die beiden Bestandteile meiner geteilten Zelle aufgeteilt werden
                können, sehe ich keine Probleme mehr, der Flash-Bereich bleibt un-
                geteilt und Grafiken o.ä. kann man wunderbar teilen.

                Viele Grüße aus Dresden,
                Stefan Einspender

                <img src="http://www.favicon.de/_banner1.gif" title="Patchwork - die bunte Welt des WWW auf Favicon.de" style="cursor:hand;" onClick="window.location.href='http://www.favicon.de/patchwork/'" onmouseover="status='http://www.favicon.de/patchwork/';return true;" onmouseout="status='';return true;" alt="">

                1. Hallo,

                  <td></td> vermieden werden, da gehört   o.ä. rein!

                  hier meine ich natürlich   :-)

                  Und wieder etwas gelernt:
                  Wenn man auf [Nachricht absenden] klickt um den Titel der Nachricht
                  zu ändern, werden Sachen wie & bereits in & umgewandelt.

                  Aus &nbsp; wurde so oben   und nach dem zweiten,
                  dem richtigen, [Nachricht absenden] dann

                  Viele Grüße aus Dresden,
                  Stefan Einspender

                  <img src="http://www.favicon.de/_banner1.gif" title="Patchwork - die bunte Welt des WWW auf Favicon.de" style="cursor:hand;" onClick="window.location.href='http://www.favicon.de/patchwork/'" onmouseover="status='http://www.favicon.de/patchwork/';return true;" onmouseout="status='';return true;" alt="">

                  1. Hallo Stefan!

                    <td></td> vermieden werden, da gehört   o.ä. rein!

                    hier meine ich natürlich   :-)

                    Heute spukt es im Forum aber wieder heftig! ;-)
                    Siehe auch <104774.html> ff. "Ich sehe was, was du nicht siehst"

                    zumindest war meine Antwort nicht mal nur so schnell hingetippt, ich
                    habe mind. eine halbe Stunde probiert etc., bis ich erkennen mußte,
                    dass diese Änderung notwendig ist. Von anderen Lösungen lasse ich
                    mich gern überzeugen.

                    Mir erging es leider genauso. Viel probiert und nichts erreicht. :-( Einzig der IE stellt die Seite so dar, wie er sollte, obwohl der Quellcode keinen wirklichen Fehler enthält.)

                    Warum hast Du dann in 104873.html etwas ganz anderes vorgeschlagen? ;-)

                    Ich denke, dass sowohl dein Ansatz als auch meiner möglich sind, wenn eine Änderung der Design-Struktur insgesamt zulässig wäre.

                    Nur sollte man das dann auch dazusagen und nicht einfach so tun, als wäre es dasgleiche. ;-)

                    Leider scheint mir, dass Franks (guter) Ansatz zum Scheitern verurteilt ist.

                    Das liegt aber nicht an Frank, sondern IMHO an der Unfähigkeit von NS und Opera.

                    In diesem Punkt unterschied sich die Aussage deines Postings meines Erachtens sehr von meinem.

                    Auch scheint mir, dass Frank und wir beide die einzigen sind, die erkannt haben, dass das Problem beileibe nicht so einfach ist wie anfangs gedacht.

                    Aber vielleicht liest ja doch noch jemand mit und präsentiert uns eine Lösung oder zumindest Erklärung.

                    Dann hätte mein 'Nachfassen' auch den gewünschten Erfolg gehabt. :-)

                    In diesem Sinne

                    viele Grüße quer durch Deutschland,
                    kerki

                    1. Hallo Stefan und Kerki

                      Vielen Dank ersteinmal das Ihr beide euch soviel Mühe gegeben habt dieses Problem zu lösen.
                      Auch wenn es nichts geworden ist so kenne ich jetzt mal wieder eine Grenze mehr in der HTML quälerei. :-)

                      Ich hoffe, dass ich euch aucheinmal tatkräftige Unterstützung bieten kann.

                      Viele Grüsse
                      Frank

                      P.S.: (Kerki) Ich denke, dass Stefan für einen Moment meine Problemstellung bei der Vertiefung zur
                      Lösung des Problems nicht mehr genau im Kopf hatte und darum dieser Ausrutscher (Swachsinn)
                      Danke, das Du mich verteidigt hast. :-)

  3. Hallo Frank
    Füge mal ein nobreaking Space in den leeren Tabellenzellen ein.
    Netscape hat nämlich Probleme mit der Darstellung von leeren Zellen.
    Danach hat es bei mir geklappt.
    Gruß
    Jürgen

    1. Hallo Frank
      Füge mal ein nobreaking Space in den leeren Tabellenzellen ein.
      Netscape hat nämlich Probleme mit der Darstellung von leeren Zellen.
      Danach hat es bei mir geklappt.
      Gruß
      Jürgen

      Hallo Jürgen

      Leider ist das Problem nicht fehlende nobreaking spaces sondern überlappende (verbundene)Zellen (nobreakingspaces habe ich unter anderem zu genüge ausprobiert)
      http://www.teamone.de/selfaktuell/forum/messages/104755.html
      Hier ist das Problem genauer beschrieben.
      vielleicht hast Du ja eine gute Idee.

      Gruß
      Frank