Raffi: Verstehe dieses Beispiel nicht

Hy leute

Warum kann ich das nicht in einem vereinen, sodass die Tabelle in der Mitter steht?

------------CSS FILE-------------
div.center table {
 margin-left:auto;
 margin-right:auto;
 }

div.center {
 text-align:center;
 }

--------------HTML DAtei----------

<div class="center">
<table border="1">
  <tr>
    <td> </td>
  </tr>
  <tr>
    <td> </td>
  </tr>
  <tr>
    <td> </td>
  </tr>
</table>
</div>

Beispiel entnommen von: http://selfaktuell.teamone.de/tippstricks/css/ausrichtung/index.htm#beispiel

Danke und Gruss
Raffi

  1. was willst du vereinen?
    kannst das div auch 100% gross machen und den inhalt zentrieren, dann ist die tabelle auch in der mitte.

    1. div.center table {
       margin-left:auto;
       margin-right:auto;
       }

      Wenn ich das hier weg lasse:
      div.center {
       text-align:center;
       }

      ist es im Netscape 4.7 nicht mehr in der Mitte:

      Und so funzt es auch nicht:

      div.center table {
       margin-left:auto;
       margin-right:auto;
       text-align:center;
       }

      Warum das? und kann man das nicht mit einer Definition lösen das es in allen 3 Browsern in der Mitte erscheint?

      gruss
      raffi

      1. Doch klar kannst du das.
        Muss es denn in einem div sein?

        Wenn nicht kannst du die styles weglassen und einfach so machen:
        <center>
        <table><tr><td>...</td></tr></table>
        </center>

        Übrigens, mit dem hier:
        div.center table {
         margin-left:auto;
         margin-right:auto;
         text-align:center;
         }

        sprichst du nicht das div an, sondern den table der in diesem div liegt. Da hat das text-align überhaupt keine wirkung, das muss schon ins div.
        Aber du müsstest das weglassen können und der Table müsste trotzdem in der mitte sein.

        div.center {
         text-align:center;
         }
        das ist das wichtige.

        Saludo
        Paul

        1. hi

          <center>
          <table><tr><td>...</td></tr></table>
          </center>

          man kann natürlich, nur um 3 Zeilen zu sparen auf HTML2 zurückfallen.....

          Grüße aus Bleckede

          Kai

      2. Hallo,

        div.center table {
         margin-left:auto;
         margin-right:auto;
         }

        Diese Definition sorgt dafür, dass jede Tabelle im Bereich mit der Klasse "center" links und rechts automatische Randeinstellungen bekommt. Das interpretieren aber nur einige Browser richtig. MSIE5.x und NN4.7 eben nicht.

        div.center {
         text-align:center;
         }

        Das definiert, dass Text-Inhalte im Bereich mit der Klasse "center" zentriert werden. Damit zentrieren MSIE5.x und offensichtlich auch NN4.7 eben auch die Tabelle.

        Und so funzt es auch nicht:

        div.center table {
         margin-left:auto;
         margin-right:auto;
         text-align:center;
         }

        Das definiert, zusätzlich zu siehe oben, dass Text-Inhalte _in_ Tabellen im Bereich mit der Klasse "center" zentriert werden. Das willst Du ja aber nicht. ;-)

        Nein, Du brauchst _beide_ Definitionen, damit es in allen Browsern funktioniert.

        Gruß

        Axel

  2. Hallo Raffi,

    was ist an dem Artikel nicht verständlich? Bitte um Rückmeldung, damit ich ihn bei Bedarf überarbeiten kann.

    Das erste Beispiel des Artikels ist die eigentlich "richtige" Variante, die aber nur in modernen Browsern funktioniert.
    Das zweite Beispiel, welches Du hier genannt hast, ist ein Work-Around, der in den meisten Browsern funktionieren sollte.

    Viele Grüße
    Carsten

    1. Hat sich geklärt....habe nicht verstanden warum, das es die zwei angaben braucht und es nicht reicht mit nur einer!

      Jetzt ist mir klar das eine für netscape 4.7 das andere für IE!

      Gruss
      Raffi

      1. Hallo,

        Jetzt ist mir klar das eine für netscape 4.7 das andere für IE!

        Nö, das eine für Mozilla, Opera, Konqueror, IE6 (aber nur im richtigen Mode), das andere für alle anderen IEs und Netscape4... ;-)

        Viele Grüße
        Carsten