Spark: IE6 kann kein Max-Width?

Hallo,

zwei simple CSS Angaben fuer meine Tabelle:

Width: 100%;
Max-Width: 800px;

Er soll also moeglichst die gesamte Breite des Bildschirm's benutzen, aber nicht mehr als 800 Pixel.
Mozilla tut genau das, IE6 schert sich einen Dreck darum und verwendet immer 100% fuer die Breite der Tabelle.

Gehe ich Recht in der Annahme, dass es sich hier einfach wieder um eine Unzulaenglichkeit des MS Browsers handelt und ich nicht's dagegen tun kann? *seufz*
Vielleicht gibt es ja einen Work-Around?

Greets,
Spark

  1. Hallo,

    Gehe ich Recht in der Annahme, dass es sich hier einfach wieder um eine Unzulaenglichkeit des MS Browsers handelt und ich nicht's dagegen tun kann?

    Nur Opera ab 5.x kommt mit min-width bzw. max-width zurecht, siehe http://www.styleassistant.de/tips/tip66.htm.

    MfG, Thomas

    1. Hi,

      Gehe ich Recht in der Annahme, dass es sich hier einfach wieder um eine Unzulaenglichkeit des MS Browsers handelt und ich nicht's dagegen tun kann?

      Nur Opera ab 5.x kommt mit min-width bzw. max-width zurecht, siehe http://www.styleassistant.de/tips/tip66.htm.

      Für min-width hab ich letztens ein Work-Around gebastelt:
      <table style="height: 0; width: [min-width]px"></table>
      Das ist eine Tabelle, in der weder eine Zeile noch eine Spal-
      te drinsteht ... irgendwie funktioniert's mit dem IE trotz-
      dem.
      Wenn nicht, mal als Höhe 1px ausprobieren.

      Bye,
      Peter

      1. Hallo Peter,

        Das ist eine Tabelle, in der weder eine Zeile noch eine Spal-
        te drinsteht ... irgendwie funktioniert's mit dem IE trotz-
        dem.

        Und was macht man mit einer Tabelle, die weder eine Zeile noch eine Spalte besitzt, praktisch?

        MfG, Thomas

        1. Hallo Thomas,

          Das ist eine Tabelle, in der weder eine Zeile noch eine Spal-
          te drinsteht ... irgendwie funktioniert's mit dem IE trotz-
          dem.

          Und was macht man mit einer Tabelle, die weder eine Zeile noch eine Spalte besitzt, praktisch?

          Nichts, nur braucht man irgendwas, um dem IE klar zu machen,
          dass er die Seite so weit aufziehen soll, ggf. mit Scrollbal-
          ken. Der Effekt ist gleich min-width.

          Bye,
          Peter

          1. Hallo Peter,

            Und was macht man mit einer Tabelle, die weder eine Zeile noch eine Spalte besitzt, praktisch?

            Nichts, nur braucht man irgendwas, um dem IE klar zu machen,
            dass er die Seite so weit aufziehen soll, ggf. mit Scrollbal-
            ken. Der Effekt ist gleich min-width.

            Es geht Dir also um body {min-width: ...; }? Dann wuerde ich doch eher ein transparentes 1-Pixel-GIF auf eine bestimmte Breite aufspannen als eine Tabelle ohne Reihen und Spalten zu bauen ...

            MfG, Thomas

            1. Hi Thomas,

              Es geht Dir also um body {min-width: ...; }? Dann wuerde ich doch eher ein transparentes 1-Pixel-GIF auf eine bestimmte Breite aufspannen als eine Tabelle ohne Reihen und Spalten zu bauen ...

              Ja, es geht um body { min-width: ...; }.
              Das transparente GIF hat den Nachteil, dass es eben 1px hoch
              ist - die Tabelle wird gar nicht angezeigt, ihre Eigenschaf-
              ten aber dennoch berücksichtigt!

              Bye,
              Peter

              1. Hallo Peter,

                Ja, es geht um body { min-width: ...; }.
                Das transparente GIF hat den Nachteil, dass es eben 1px hoch
                ist - die Tabelle wird gar nicht angezeigt, ihre Eigenschaf-
                ten aber dennoch berücksichtigt!

                Scheinbar doch nicht:
                <table style="height: 0; width: 1000px"></table>
                fuehrt im IE6 bei einem kleinen sichtbaren Fenster nicht zu einem horizontalen Scrollbalken, aber
                <table style="height: 0; width: 1000px"><tr><td>Test</td></tr></table>
                schon.

                Ansonsten kann man das GIF vor </body> setzen oder mit top: -1px; positionieren (wer Wert auf ±1 Pixel Wert legt, macht auch das ;-).

                MfG, Thomas

                1. Hi,

                  Ja, es geht um body { min-width: ...; }.
                  Das transparente GIF hat den Nachteil, dass es eben 1px hoch
                  ist - die Tabelle wird gar nicht angezeigt, ihre Eigenschaf-
                  ten aber dennoch berücksichtigt!

                  Scheinbar doch nicht:
                  <table style="height: 0; width: 1000px"></table>
                  fuehrt im IE6 bei einem kleinen sichtbaren Fenster nicht zu einem horizontalen Scrollbalken, aber
                  <table style="height: 0; width: 1000px"><tr><td>Test</td></tr></table>
                  schon.

                  Hm. Bei mir schon, ich bastel heute Nachmittag mal ein Bsp.

                  Ansonsten kann man das GIF vor </body> setzen oder mit top: -1px; positionieren (wer Wert auf ±1 Pixel Wert legt, macht auch das ;-).

                  Stimmt, aber dann doch in den body und position: relative;
                  top: -21px *g*

                  Bye,
                  Peter

  2. Hallo Spark,

    Er soll also moeglichst die gesamte Breite des Bildschirm's benutzen, aber nicht mehr als 800 Pixel.
    Mozilla tut genau das, IE6 schert sich einen Dreck darum und verwendet immer 100% fuer die Breite der Tabelle.

    Leider, ja, und nicht zu aendern. Aber wenn es um Tabellen geht, dann guck dir doch auch mal die Eigenschaft table-layout an. Vielleicht hilft sie dir weiter:

    http://selfhtml.teamone.de/css/eigenschaften/tabellen.htm#table_layout

    viele Gruesse
      Stefan Muenz

    1. Hallo Stefan,

      danke fuer den Tip, allerdings fehlt mir gerade das Vorstellungsvermoegen, um eine sinnvolle Anwendung dafuer zu finden. :)
      Mein Problem ist folgendes, ich moechte eine zentrierte Tabelle haben, die bis zu einer bestimmten Fenstergroesse 100% der Fensterbreite einnimmt, aber darueber hinnaus einen prozentualen Rand laesst, damit es nicht allzu daemlich aussieht.
      Ich habe also Tabellenbreite = 80%. Ist das Fenster nun aber klein (z.B. 800x600 Pixel), dann soll die Tabelle eben auch diese 800 Pixel verwenden und nicht unnoetigerweise noch mehr gequetscht werden.
      Ein "fixed" Layout wuerde mir da nicht helfen, da es ja gerade nicht fixed sein soll sondern relativ dynamisch.
      Wahrscheinlich ist die einzige IE-kompatible Loesung, dass ich irgendetwas in die Tabelle reinklatsche und ihn somit auf eine bestimmte Anzeigenbreite zwinge. Bisher war ich damit leider noch nicht erfolgreich, aber ich werde schon etwas finden.

      Gruss,
      Spark