Martin Alt: IE5.0-Problem: padding bei table

Hallo Allerseits!

Beim IE5.0 wird bei "table" das CSS-Attribut padding scheinbar ignoriert, während mir der IE4.0 eine korrekte Darstellung liefert.

Hierzu ein Bsp:

<table cellspacing="0" bgcolor="#6666FF" style="padding:20px">
<tr>
<td>TEXT TEXT</td>
</tr>
</table>

Symbolisch sieht die Tabelle dann so aus:

IE4.0                   IE5.0

+------------------+
                          +---------+
    TEXT TEXT             TEXT TEXT
                          +---------+
+------------------+

Bisher konnte ich den IE5.0 nur durch die cellpadding-Angabe im table-Tag dazu überreden, einen Abstand zu erzeugen.

Mit
<td style="padding:20px">TEXT TEXT</td>
kann ich zwar denselben Effekt erreichen, aber ich brauche die CSS-Definition tabellenweit.

Hat jemand hierfür eine Lösung??

Viele Grüße,
Martin.

  1. Wenn es so ist, wie im Beispiel:

    <table cellspacing="0" bgcolor="#6666FF" style="padding:20px">
    <tr>

    »»  <td>TEXT TEXT</td>

    </tr>
    </table>

    nimmt er das Padding moeglicherweise fuer die TABLE selbst, und nicht fuer TD. Probier doch mal

    <SCRIPT type="text/css"><!--
    td { padding:20px; }
    //--></SCRIPT>

    im HEAD.

    cu
    Michael

    1. Hallo Michael

      nimmt er das Padding moeglicherweise fuer die TABLE selbst, und nicht fuer TD. Probier doch mal

      td { padding:20px; }

      Es sieht wirklich absolut gleich aus, ob man das TABLE oder TD anhängt (auf IE4.0). Soweit sogut - allerdings sind bei mir nicht alle TDs einer Seite mit gleichem Padding versehen... (eine Tabelle hat z.B. 10, die nächste nur 5).

      Ich müßte also bei jedem TD eine CLASS oder ID definieren, und das möchte ich eigentlich vermeiden.

      Noch eine Idee? :-)

      Tnx & viele Grüße,
      Martin

      1. Hallo Martin

        Ich müßte also bei jedem TD eine CLASS oder ID definieren, und das möchte ich eigentlich vermeiden.

        Au contraire: Wenn Du TD im Stylesheet definierst, gilt die Angabe fuer alle TD's im Dokument. Erst wenn Du mehrere Tabellen in der Datei hast, die auch noch unterschiedliche Einstellungen haben sollen, brauchst Du Klassen.

        Eine andere Idee hab' ich (noch) nicht...

        cu
        Michael

        1. Hallo Michael

          Au contraire: Wenn Du TD im Stylesheet definierst, gilt die Angabe fuer alle TD's im Dokument. Erst wenn Du mehrere Tabellen in der Datei hast, die auch noch unterschiedliche Einstellungen haben sollen, brauchst Du Klassen.

          Ja, stimmt, ich hab Dich schon richtig verstanden, nur müßte ich dann in jedem TD die Klasse angeben, und das will ich vermeiden, weil es der Tabelle eigentlich zugeordnet ist, und nicht jedem einzelnen TD. Pro Tabelle ist das padding gleich (wie beim HTML-Attribut cellpadding). Die genaue Entsprechung von cellpadding suche ich als CSS-Attribut.

          Noch eine Idee? :-)

          Viele Grüße,
          Martin

          1. Hallo!

            Au contraire: Wenn Du TD im Stylesheet definierst, gilt die Angabe fuer alle TD's im Dokument. Erst wenn Du mehrere Tabellen in der Datei hast, die auch noch unterschiedliche Einstellungen haben sollen, brauchst Du Klassen.

            Ja, stimmt, ich hab Dich schon richtig verstanden, nur müßte ich dann in jedem TD die Klasse angeben, und das will ich vermeiden, weil es der Tabelle eigentlich zugeordnet ist, und nicht jedem einzelnen TD. Pro Tabelle ist das padding gleich (wie beim HTML-Attribut cellpadding). Die genaue Entsprechung von cellpadding suche ich als CSS-Attribut.

            Die Lösung hast du schon bekommen.
            td { padding:20px; } im <style></style> bereich zu definieren.
            Wenn du das machst erhält jede Tabellenzelle in der Seite automatisch ein padding von 20px, OHNE daß du eine 'class' oder 'id' vergeben müstest. Egal ob du eine opder zeht Tabellen hast und egal ob sie einzel oder verschatelt stehen.
            Wenn du für einige Tabellen unterschiedlichs 'padding' haben möchtest, muss du zwar Klassen vergeben, aber nicht unbedingt für jede <td>.

            table.schmal td { padding:5px; }
            table.breit td { padding:20px; }

            <table class="schmal"><tr>
            <td>td mit 5px padding</td>
            </tr></table>
            <table class="breit"><tr>
            <td>td mit 20px padding</td>
            </tr></table>

            Die CSS-Classen 'schmal' und 'breit' gelten nut für Tabellen du kannst sie mehrmals anwenden. Aufpassen muss du nur dann wenn du verschachtelte Tabellen machst; da reagieren die Browser auch mal ganz unterschiedlich.

            Grüße
            Thomas

          2. Hallo!

            »»Egal ob du eine opder zeht Tabellen hast und egal ob sie einzel oder verschatelt stehen.
            ««

            Oops ... das war ich gar nicht! ;-) Also das kann man nun so wirklich nicht stehen lassen:

            Egal ob du eine Tabelle oder zehn Tabellen hast und egal ob sie einzeln oder verschachtelt stehen.

            Grüße
            Thomas