Walter Schmid: Tabelle in der Tabelle zentrieren

Hallo miteinander -

mein Problem:
ich habe in einer blinden Tabelle eine zweite -
kleinere, sichtbare - Tabelle horizontal zentriert angeordnet,
mit Hilfe von CSS. Das sieht so aus:

<table width=100%><tr><td class=S>
<table border=1><tr><td> .... Inhalt ....</td></tr></table>
</td></tr></table>
Dazu gehört die CSS-Formatierung (in einer separaten Datei):
td.S{.....;text-align:center;}
(Versuchsweise auch td.S{.....;alignment:center;} )

Funxt auch - bis jetzt!
Geht aber nicht mehr mit Netscape 6 und Opera 3.6!
:-<<<
Die sichtbare Tab ist jetzt linksbündig ausgerichtet! Sieht saublöd aus.
Reiner Text innerhalb der blinden Tab wird aber korrekt ausgerichtet.

FRAGE: Gibt es ein CSS-string, das den GESAMTEN Zelleninhalt (also auch eine Tabelle innerhalb der Tabelle) horizontal zentriert?
In Self-html hab ich nix gefunden.

Das Einzige, was hilft, ist <center> oder
<div align="center"> direkt im html-Text. Dann müsste
ich aber an die 1000 (eintausend!) Dateien zu Fuß
ändern, und das stinkt mir, da ich als Intschintschör
(für die Schweizer:"Ääähschinjör")
von Beruf faul bin und als Rentner eh keine Zeit habe
;-)
Ich will - wenn überhaupt - nur wenige
CSS-Formatdateien ändern müssen. Dazu gibts ja CSS.

Hat jemand eine Idee???

Gruß! Walter

  1. Hi!

    Also wenn ich Dir folgen konnte, dann willst Du einfach eine Tabelle mit 100% Breite und in der Mitte dieser eine neue Tabelle. Geht dann so:

    <table width="100%" border=0>
      <tr><td align="center">
          <table border=1>
             <tr><td> ... Inhalt ... </td></tr>
          </table>
      </td></tr>
    </table>

    Aber wozu dabei CSS?

    Hoffe, ich konnte Dir helfen.
    Grüße

    Thomas.

    1. Also wenn ich Dir folgen konnte, dann willst Du einfach eine Tabelle mit 100% Breite und in der Mitte dieser eine neue Tabelle.

      HTML ist nicht dazu gedacht, um Layoutaufgaben zu übernehmen.

      Aber wozu dabei CSS?

      Der Sinn von CSS liegt darin, solche Sachen (z.Bsp. Ausrichtung von
      Inhalten) umzusetzen.
      Walter handelt da völlig korrekt.

      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml"><head>
      <title>zentrierte tabelle</title>
      </head><body>
      <table style="width:100%;text-align:center;">
          <tr><td><table style="margin:auto;">
              <tr><td>inhalt</td></tr>
            </table></td></tr>
        </table>
      </body></html>

      Zu beachten ist, dass vernünftige Browser das text-align:center;
      nicht benötigen, der MSIE aber schon ;-)
      In Browsern, die noch auf der technischen Basis von vor 5 Jahren
      stehengeblieben sind (Netscape 4.x), funktioniert diese Lösung
      nicht, was ich aber in diesem Fall als nicht relevant betrachte.

      1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml"><head>
        <title>zentrierte tabelle</title>
        </head><body style="min-width:500px;text-align:center;">
        <table style="margin:auto;">
            <tr><td>inhalt</td></tr>
          </table>
        </body></html>

        funktioniert auch, allerdings sind es dann nicht mehr zwei inein-
        ander verschachtelte Tabelle. Die Mindestbreite braucht in diesem
        Fall der Opera, text-align:center; ist wieder für den Möchtegern-
        Browser von Microsoft bestimmt.

        In Browsern, die noch auf der technischen Basis von vor 5 Jahren
        stehengeblieben sind (Netscape 4.x), funktioniert diese Lösung
        nicht, was ich aber in diesem Fall als nicht relevant betrachte.

        obiges Beispiel versteht der auch :-)

    2. Hallo  -
      vielen Dank erstmal für eure Antworten.
      Offenbar hab ich aber mein Problem noch nicht ganz rüber bringen können.
      Ich habe etwa 1000 (tausend!) REAL EXISTIERENDE Seiten mit einer zentrierten Tabelle innerhalb einer blinden Tabelle:

      <table width=100%><tr><td class=S>
      <table border=1><tr><td> .... Inhalt ....</td></tr></table>
      </td></tr></table>
      Die Zentrierung erfolgt dabei mit CSS (in einer separaten Datei):
      td.S{.....;text-align:center;}

      Das geht auch so - bis jetzt, mit NS 4.x oder IE 4.x!
      Es GEHT ABER NICHT MEHR mit Netscape 6 und Opera 3.6!
      Dh. mit diesen beiden Browsern wird die sichtbare Tab jetzt linksbündig ausgerichtet!
      Reiner Text innerhalb der blinden Tab wird aber korrekt zentriert ausgerichtet.
      (Der versuchsweise verwendete String td.S{.....;alignment:center;} funxt auch nicht.)

      Damit ich nicht in alle 1000 Dateien zu Fuß ein "alignment=center" einfügen muss, SUCHE ich ein CSS-string (statt dem bisher verwendeten td.S{.....;text-align:center;}, das den GESAMTEN Zelleninhalt (also nicht nur Text, sondern auch eine Tabelle innerhalb der Tabelle) horizontal zentriert.

      Warum ich 1000 Seiten mit ähnlicher Struktur habe und warum ich mitttels CSS formatiere, würde für das Forum hier zu weit führen; wen's interessiert, dem erkläre ich es natürlich gerne.

      Gruß! Walter