Sabine: Alternative zu Frames ab Browsern 4.x

Hallo!

Nach wie vor sind viele meiner Kunden, im Gegensatz zu mir, total begeistert von Frames, schon alleine aus dem Grund, weil man z.B. Menüleisten immer sichtbar halten kann.

Nun mache ich mir gerade Gedanken über Alternativen mit denen man das gleiche erreichen kann, die in Browsern aber der 4. Generation funktionieren und bei denen man niemanden ausschließt (Stichwort Javascript) ...

1. Die einfachste Variante, die Seiten mit so wenig Inhalten zu füllen, dass das Menü immer sichtbar ist, schließe ich mal aus, denn sonst führe ich die ganze Diskussion gleich ad absurdum :)

2. DIVs: Grundsätzlich ja wunderbar mit overflow:auto oder overlow:style. Wenn da nicht der Netscape 4.x wäre der das nicht versteht und auch Opera da so seine eigenen Vorstellungen hätte.

3. Javascript/DHTML: Menüs, die "stehen bleiben" programmieren. Eine browserübergreifende Lösung ist hier sicherlich zu erzielen, aber man schießt wieder die "Javascript-deaktiven" aus.

Leider bin ich hiermit schon mit meinem Latein am Ende, ich sehe einfach unter den gegebenen Bedingungen (für alle Browser ab 4.x - ob mit oder ohne Javascript - ein immer sichtbares Menü zu erzeugen) keine Lösung.

Falls mich jemand von euch vom Gegenteil überzeugen kann, freue ich mich natürlich sehr.

Liebe Grüße
Sabine

  1. Hallo Sabine,

    1. DIVs: Grundsätzlich ja wunderbar mit overflow:auto oder overlow:style. Wenn da nicht der Netscape 4.x wäre der das nicht versteht und auch Opera da so seine eigenen Vorstellungen hätte.

    kannst Du dafür mal ein Beispiel zeigen/nennen? Deine Äußerungen ent-
    nehme ich, dass sowas auch im MSIE ohne JavaScript/DHTML funktioniert.

    Lösungen mit JavaScript gibt es übrigens etliche, aber fast immer sind
    sie recht "rucklig", aufwendig und wie Du schon sagtest problematisch.

    Viele Grüße,
    Stefan

    1. Hallo Stefan!

      1. DIVs: Grundsätzlich ja wunderbar mit overflow:auto oder overlow:style. Wenn da nicht der Netscape 4.x wäre der das nicht versteht und auch Opera da so seine eigenen Vorstellungen hätte.

      kannst Du dafür mal ein Beispiel zeigen/nennen? Deine Äußerungen ent-
      nehme ich, dass sowas auch im MSIE ohne JavaScript/DHTML funktioniert.

      Ja, der MSIE mag es schon.Habe momentan nur Zugriff auf den MSIE 6.0 und hier funktioniert folgendes:

      <body>
      <div id="top" style="position:absolute;top:0px;left:0px;height:5%;width:100%">
      Hier ist der Topinhalt
      </div>
      <div id="Bottom" style="position:absolute;overflow:auto;height:95%;top:5%;left:0px;width:100%">
      und hier der Maininhalt
      </div>
      </body>

      Lösungen mit JavaScript gibt es übrigens etliche, aber fast immer sind
      sie recht "rucklig", aufwendig und wie Du schon sagtest problematisch.

      Ja, ich weiß. Ich bin auch eher "JavaScript-Gegner" - sicher kann man tolle Sachen damit machen, aber bei mir ist JavaScript eher in der Lade "Zusatzfeatures" - Dinge die praktisch aber nicht notwendig sind, z.b. Mouseover-Menüs.

      Liebe Grüße
      Sabine

      1. Hallo Sabine,

        Ja, der MSIE mag es schon.Habe momentan nur Zugriff auf den MSIE 6.0 und hier funktioniert folgendes:

        hm ... also bei meinem MSIE bleibt da nix stehen, es wird alles wie
        üblich gescrollt. Hier der von mir verwendete Quelltext:

        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
                "http://www.w3.org/TR/html4/strict.dtd">
        <html>
        <head>
        <title>test</title>
        <meta http-equiv="Content-Style-Type" content="text/css">
        <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
        </head>
        <body>
        <div id="top" style="position:absolute;top:0px;left:0px;height:5%;width:100%">
        Hier ist der Topinhalt
        </div>
        <div id="Bottom" style="position:absolute;overflow:auto;height:95%;top:5%;left:0px;width:100%">
        <p>und hier der Maininhalt</p>
        <p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p>
        <p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p>
        <p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p>
        </div>
        </body>
        </html>

        Im Mozilla gibt die Sache übrigens einen recht lustigen Effekt, da
        erscheint der Scrollbalken nur für den unteren Teil und man könnte
        darauf wetten, dass hier Frames verwendet wurden ;-)

        Hast Du vielleicht eine Testseite zur Hand, wo auch im MSIE ohne
        JS etwas fest positioniert ist?

        Viele Grüße,
        Stefan

        1. Hallo Stefan!

          Ja, der MSIE mag es schon.Habe momentan nur Zugriff auf den MSIE 6.0 und hier funktioniert folgendes:

          hm ... also bei meinem MSIE bleibt da nix stehen, es wird alles wie
          üblich gescrollt. Hier der von mir verwendete Quelltext:

          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
                  "http://www.w3.org/TR/html4/strict.dtd">

          Ich hatte den Transitional-DOCTYPE verwendet. Aber auch bei strict sollte es funktionieren und zwar mit der Ergänzung:
          <style type="text/css">
          body, html {overflow-y:hidden;height:100%}
          </style>

          Im Mozilla gibt die Sache übrigens einen recht lustigen Effekt, da
          erscheint der Scrollbalken nur für den unteren Teil und man könnte
          darauf wetten, dass hier Frames verwendet wurden ;-)

          Ja, das ist auch genau das was ich wollte und wie es im Code steht. Nur der untere div hat das Overflow:auto erhalten, der obere nicht. Daher wird auch nur der untere gescrollt.

          Hast Du vielleicht eine Testseite zur Hand, wo auch im MSIE ohne
          JS etwas fest positioniert ist?#

          Ich weiß jetzt nicht genau was du meinst, dass die bestehende Scrollleiste wegkommt und stattdessen die durch den div erzwungene angezeigt wird? Dann einfach das erste Div entfernen und beim zweiten die height auf 100% setzen (und bei top:0px beginnen lassen).

          Liebe Grüße
          Sabine

          Viele Grüße,
          Stefan

  2. Hi Sabine,

    ich sehe einfach unter den gegebenen Bedingungen (für alle Browser ab 4.x - ob mit oder ohne Javascript - ein immer sichtbares Menü zu erzeugen) keine Lösung.

    die gibt es auch nicht, du musst dich entscheiden. Entweder

    • du setzt auf position:fixed, dann klappt's in guten neuen Browsern
    • du plagst dich mit Javascript und solltest dann den dreifachen Preis berechnen ;)

    LG Orlando

    --
    SELF-TREFFEN 2002
    http://www.rtbg.de/selftreffen/
    http://www.megpalffy.org/temp/penneninhh.html

    1. Hi Orlando!

      die gibt es auch nicht, du musst dich entscheiden. Entweder

      • du setzt auf position:fixed, dann klappt's in guten neuen Browsern

      He - toll!! Danke für den Tipp. postion:fixed mag auch Opera, nur der Netsi 4 nicht, aber das soll mich fürs Erste nicht weiter stören.

      • du plagst dich mit Javascript und solltest dann den dreifachen Preis berechnen ;)

      :) Berechnen ist ja kein Problem ...

      LG Orlando

      Liebe Grüße
      Sabine