apstrakt: align="center" mit CSS

Hallo,

gibt es mit CSS die Möglichkeit, das HTML-Attribut align (also z.B. align="center") zu ersetzen? Naheliegend wäre text-align, aber das funktioniert leider (in Netscape 7 im Standard-Render-Mode) nicht so wie gewünscht, auch dann nicht, wenn man feste Breiten angibt.

Beispiel:
<div align="center">
<table>
...
</table>
</div>

bewirkt bekanntlich, daß die Tabelle horizontal zentriert im Browserfenster dargestellt wird. (oder einfach nur <table align="center">).

<div style="text-align:center">
<table style="text-align:left">
...

macht leider nicht dasselbe: im MSIE zwar schon, aber nicht im NN 7.

Es kann doch eigentlich nicht sein, daß Gestaltungsmöglichkeiten, die HTML bietet, nicht auch in CSS verfügbar sind.

Tschau,
apstrakt

--
http://www.cafe-abstrakt.de
  1. Hi,

    gibt es mit CSS die Möglichkeit, das HTML-Attribut align (also z.B. align="center") zu ersetzen? Naheliegend wäre text-align, aber das funktioniert leider (in Netscape 7 im Standard-Render-Mode) nicht so wie gewünscht, auch dann nicht, wenn man feste Breiten angibt.
    Beispiel:
    <div align="center"><table>...</table></div>
    bewirkt bekanntlich, daß die Tabelle horizontal zentriert im Browserfenster dargestellt wird. (oder einfach nur <table align="center">).
    <div style="text-align:center">
    <table style="text-align:left">
    macht leider nicht dasselbe: im MSIE zwar schon, aber nicht im NN 7.

    Weil der IE fehlerhaft ist.
    text-align beeinflußt nur inline-Elemente. table ist kein inline-Element.
    table ist ein blocklevel-Element.
    Blocklevel-Elemente werden über die linken/rechten Ränder zentriert (Wert: auto)

    cu,
    Andreas

    --
    Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
    http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/
    1. Hallo!

      Blocklevel-Elemente werden über die linken/rechten Ränder zentriert (Wert: auto)

      Warum immer so cryptisch?
      Sags dem armen Menschen doch im Klartext:
      table { margin: auto }

      tschüs, jürgen

      1. Hallo Jürgen,

        Warum immer so cryptisch?

        Genau. ;)

        Sags dem armen Menschen doch im Klartext:
        table { margin: auto }

        Danke. Sehe gerade, daß das gar nicht in SELFHTML steht. Muß wohl langsam doch öfters mal in den CSS-Spezifikationen nachsehen.

        Tschau,
        apstrakt

        --
        http://www.cafe-abstrakt.de
        1. Hallo,

          Warum immer so cryptisch?

          Beim Vorsetzen einer fertigen Lösung fällt der Lerneffekt weg. Deswegen heißt dies hier auch SelfHTML und nicht GetHTML ;-)

          Sehe gerade, daß das gar nicht in SELFHTML steht.

          Es gibt hier noch mehr als nur selfhtml.teamone.de oder forum.de.selfhtml.org, sondern zum Beispiel auch http://aktuell.de.selfhtml.org/tippstricks/css/ausrichtung/index.htm

          Viele Grüße
          Carsten

      2. hi,

        ich habe gerade das gleiche problem. aber ich mache scheinbar was falsch. um nicht lange zu raten, wo liegt mein fehler, dass die tabelle nicht zentriert wird ? villeicht habe ich wieder mal eiun brett vor dem kopf

        Ilja

        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
        <html>
        <head>
        <title>Ocean-Club</title>
        <meta name="author" content="Pumuckl">
        </head>
        <body>
        <table style="margin-left:auto; margin-right:auto;">
           <tr>
               <th colspan="4">Menu</th>
           </tr>
           <tr>
               <td width="25%">test</td>
               <td width="25%">test</td>
               <td width="25%">test</td>
               <td width="25%">test</td>
           </tr>
        </table>
        </body>
        </html>

        1. Hallo!

          ich habe gerade das gleiche problem. aber ich mache scheinbar was falsch. um nicht lange zu raten, wo liegt mein fehler, dass die tabelle nicht zentriert wird ? villeicht habe ich wieder mal eiun brett vor dem kopf

          <body>
          <table style="margin-left:auto; margin-right:auto;">

          Du machst nichts falsch, und mit mozilla und opera funktioniert das auch. Allerdings versteht der IE(5?) das noch nicht.
          Also: zusätzlich <table align="center" ... >.

          tschüs, jürgen

          1. Hallo Ilja,

            <table style="margin-left:auto; margin-right:auto;">

            Du machst nichts falsch, und mit mozilla und opera funktioniert das auch. Allerdings versteht der IE(5?) das noch nicht.

            nein, stimmt nicht, man muß nur eine feste breite angeben, dann funktioniert das auch im IE (zumindest im 6er). Also width:700px; o.ä. ins Style...

            Tschau,
            apstrakt

            --
            http://www.cafe-abstrakt.de
            1. nein, stimmt nicht, man muß nur eine feste breite angeben, dann funktioniert das auch im IE (zumindest im 6er). Also width:700px; o.ä. ins Style...

              Lange nicht mehr horizontal gescrollt; da freu ich mich drauf!
              Gunnar

              --
              Die Menschen sollten endlich lernen, andere Kulturen objektiv zu betrachten, damit sie wissen, wann sie sich einmischen sollten und wann nicht.
              (T'Pol in Enterprise: "Aufbruch ins Unbekannte")
              1. Hallo Gunnar,

                nein, stimmt nicht, man muß nur eine feste breite angeben, dann funktioniert das auch im IE (zumindest im 6er). Also width:700px; o.ä. ins Style...

                Lange nicht mehr horizontal gescrollt; da freu ich mich drauf!

                aber es funktioniert auch mit relativen Angaben und 800x600 ist wirklich das Minimum, was heutzutage i.d.R. als Bildschirmauflösung verwendet wird, dürfte also okay sein.

                Tschau,
                apstrakt

                --
                http://www.cafe-abstrakt.de
                1. 800x600 ist wirklich das Minimum, was heutzutage i.d.R. als Bildschirmauflösung verwendet wird, dürfte also okay sein.

                  Nein, apstrakt, ist es nicht.
                  Zeig mir mal einen PDA mit der Auflösung.

                  Außerdem, was hat die Bildschirmauflösung mit meinem Browserfenster zu tun?
                  Gunnar

                  --
                  Die Menschen sollten endlich lernen, andere Kulturen objektiv zu betrachten, damit sie wissen, wann sie sich einmischen sollten und wann nicht.
                  (T'Pol in Enterprise: "Aufbruch ins Unbekannte")
                  1. Hallo,

                    800x600 ist wirklich das Minimum, was heutzutage i.d.R. als Bildschirmauflösung verwendet wird, dürfte also okay sein.
                    Nein, apstrakt, ist es nicht.
                    Zeig mir mal einen PDA mit der Auflösung.

                    Ja, und auch Textbrowser, WAP-Handys ... Diese Argumentation ist Unsinn. Keine Internetpräsentation, bei der es _auch_ auf das Layout ankommt, kann für das Medium Screen und das Medium PDA identisch aufgebaut sein. Beweise mir das Gegenteil!

                    viele Grüße

                    Axel

                    1. Diese Argumentation ist Unsinn. Keine Internetpräsentation, bei der es _auch_ auf das Layout ankommt, kann für das Medium Screen und das Medium PDA identisch aufgebaut sein.

                      Stimmt sicher. Was nicht zwingend verschiedene HTML-Dokumente bedeuten muss, @media kann helfen.

                      Aber Axel, schneid bitte nicht mein Hauptargument raus und nenne meine Argumentation dann Unsinn!

                      Ich schrieb:

                      Außerdem, was hat die Bildschirmauflösung mit meinem Browserfenster zu tun?

                      Meins ist z.B. gerade 662px breit und 848px hoch und ich werd es nicht über den ganzen Bildschirm ziehen, weil ich noch anderes zu tun habe (in andern Fenstern).
                      Gunnar

                      --
                      Die Menschen sollten endlich lernen, andere Kulturen objektiv zu betrachten, damit sie wissen, wann sie sich einmischen sollten und wann nicht.
                      (T'Pol in Enterprise: "Aufbruch ins Unbekannte")
                      1. Hallo Gunnar,

                        Stimmt sicher. Was nicht zwingend verschiedene HTML-Dokumente bedeuten muss, @media kann helfen.

                        Man könnte auch mit alternativen Stylesheets arbeiten, auch wenn das nicht jeder Browser kann. ;)

                        » Ich schrieb:

                        Außerdem, was hat die Bildschirmauflösung mit meinem Browserfenster zu tun?

                        Meins ist z.B. gerade 662px breit und 848px hoch und ich werd es nicht über den ganzen Bildschirm ziehen, weil ich noch anderes zu tun habe (in andern Fenstern).

                        Du kannst also in mehreren Fenstern gleichzeitig arbeiten? ;)
                        Daß hier jedesmal dieser bescheuerte, besserwisserische Streit losgetreten wird. Wenn ich auf einer Web-Seite unbedingt was lesen will und nicht gerade einen Uraltcomputer bzw. -monitor mit Auflösung 640x480 habe, dann werde ich das Fenster auch schon groß genug machen, damit ich es lesen bzw. sehen kann. Wenn ich dann wieder was anderes zu tun habe, kann ich es ja schließen oder in den Hintergrund verbannen. Ich arbeite mit 1024x768 und daher prinzipiell mit maximierten Fenstern, weil mir der Screen viel zu klein ist. Letztlich ist es die (wahrscheinlich oft unbewußte = aus Unwissenheit getroffene) Entscheidung des Entwicklers (oder Auftraggebers), wen er durch die Wahl der Technologie von seiner Internetpräsenz ausschließt, und sowas muß daher doch nicht immer wieder neu diskutiert werden wie ein hochmoralisches Thema, als sei die Zukunft der Menschheit davon abhängig, daß jeder Scheiß in Textbrowsern gelesen werden kann.

                        Tschau,
                        apstrakt

                        --
                        http://www.cafe-abstrakt.de
                        1. Hallo!

                          Du kannst also in mehreren Fenstern gleichzeitig arbeiten? ;)
                          Daß hier jedesmal dieser bescheuerte, besserwisserische Streit losgetreten wird. Wenn ich auf einer Web-Seite unbedingt was lesen will und nicht gerade einen Uraltcomputer bzw. -monitor mit Auflösung 640x480 habe, dann werde ich das Fenster auch schon groß genug machen, damit ich es lesen bzw. sehen kann. Wenn ich dann wieder was anderes zu tun habe, kann ich es ja schließen oder in den Hintergrund verbannen. Ich arbeite mit 1024x768 und daher prinzipiell mit maximierten Fenstern, weil mir der Screen viel zu klein ist. Letztlich ist es die (wahrscheinlich oft unbewußte = aus Unwissenheit getroffene) Entscheidung des Entwicklers (oder Auftraggebers), wen er durch die Wahl der Technologie von seiner Internetpräsenz ausschließt, und sowas muß daher doch nicht immer wieder neu diskutiert werden wie ein hochmoralisches Thema, als sei die Zukunft der Menschheit davon abhängig, daß jeder Scheiß in Textbrowsern gelesen werden kann.

                          Das ärgerliche für mich ist, daß viele Seiten auf pixelbreite festgenagelt werden, ohne jede Notwendigkeit.
                          Aber so lernt man das offenbar überall, meistens von Leuten, die aus der Webebranche kommen und/oder früher Fotografen waren.
                          Die haben eben den Übergang vom Printmedium nicht geschafft.

                          tschüs, jürgen

                          1. Hallo Jürgen,

                            Das ärgerliche für mich ist, daß viele Seiten auf pixelbreite festgenagelt werden, ohne jede Notwendigkeit.
                            Aber so lernt man das offenbar überall, meistens von Leuten, die aus der Webebranche kommen und/oder früher Fotografen waren.
                            Die haben eben den Übergang vom Printmedium nicht geschafft.

                            Ja, das ärgert mich natürlich auch, vor allem wenn alles mit Grafiken realisiert ist und man mit nem 56k-Modem surft. Ich beschäftige mich beruflich sogar mit Barrierefreiheit, aber es gibt halt Fälle, wo man aus gewissen Gründen (im vorliegenden Fall rein pragmatische) um manche "dreckigen" Techniken nicht rumkommt.

                            Tschau,
                            apstrakt

                            --
                            http://www.cafe-abstrakt.de
            2. hi apstrakt,

              ja, mit festen werten funktioniert es. das bringt aber probleme mit sich, die tabelle zu zentrieren bei unterschiedlichen auflösungen. ich werde wohl oder übel überall ein align="center" benutzen müssen. auf jedefall kann ich mit der fehlersuche aufhören.

              Ilja

    2. Hallo Andreas,

      Weil der IE fehlerhaft ist.

      Das war sowieso klar, daß der IE hier nicht den Standard einhält. Das Verhalten des NN ist ja auch viel logischer.

      text-align beeinflußt nur inline-Elemente. table ist kein inline-Element.
      table ist ein blocklevel-Element.

      Auch das ist mir klar bzw. habe ich mir schon so gedacht.

      Blocklevel-Elemente werden über die linken/rechten Ränder zentriert (Wert: auto)

      Die Methode kenne ich zwar, aber auf diesem Wege ist doch gar keine Zentrierung möglich, wenn man nicht die absolute Größe des Elternelements kennt, also letztendlich die absolute Größe das Browserfensters.

      Werde jetzt erstmal die Suche bemühen...

      Tschau,
      apstrakt

      --
      http://www.cafe-abstrakt.de