mormel: N6x zeigt Layer nicht an

Hi all,

ich habe einen Layer:

<div id="blabla">
  <img src="datei.gif" border="0" width="100" height="250" alt="">
</div>

in einer separaten css-Datei steht:

#blabla { visibility:visible;position:absolute;top:50px;left:100px }

Nun zeigt mir der N6x (und nur der, IEx NC4x und Opera5x alles oK) die Grafik nicht an. Ändere ich die Positionierung in relativ, zeigt er mir die Grafik an, allerdings sind unten ca. 20% der Grafik abgeschnitten.

Testhalber habe ich alles aus der css-Datei und der html-Datei herausgeschmissen, es muß also an den o.a. Definitionen liegen.

Wer weiß Rat?

Danke mormel

  1. Hallo Mormel,

    Testhalber habe ich alles aus der css-Datei und der html-Datei herausgeschmissen, es muß also an den o.a. Definitionen liegen.

    Was zeigt denn dein Netscape 6.x bei dem da an?:
    </test/layertest.htm>

    Bei mir zeigt er das gewuenschte Ergebnis an - und die Codes hab ich ohne irgendwelche Aenderungen von deinem Posting uebernommen ...

    viele Gruesse
      Stefan Muenz

    1. Hallo Stefan,

      Was zeigt denn dein Netscape 6.x bei dem da an?:
      </test/layertest.htm>

      Da zeigt er es richtig an.

      Ich hab jetzt fest gestellt, das es am

      body  { overflow:auto },

      welches ich noch in der css-Datei hatte, lag. Damit will ich im IE die Scrollbalken nur anzeigen lassen, wenn sie auch wirklich gebraucht werden. Kann ich den N6 da irgendwie überlisten, oder muß ich da eine separate css-Datei für den N6 einbinden?

      gruß mormel

      1. Hallo Mormel,

        Ich hab jetzt fest gestellt, das es am
        body  { overflow:auto },
        welches ich noch in der css-Datei hatte, lag. Damit will ich im IE die Scrollbalken nur anzeigen lassen, wenn sie auch wirklich gebraucht werden. Kann ich den N6 da irgendwie überlisten, oder muß ich da eine separate css-Datei für den N6 einbinden?

        Wenn es daran liegt und du die Angabe fuer den IE aber unbedingt haben willst, dann wirst du um JavaScript und Browserweiche wohl nicht drumherum kommen. Am einfachsten ist es wohl, irgendwo unterhalb des einleitenden body-Tags einen JavaScript-Bereich mit Code wie diesem zu notieren:
        if(document.getElementsByTagName && document.all)
          document.getElementsByTagName("body")[0].style.overflow = "auto";

        viele Gruesse
          Stefan Muenz

        1. Hallo Stefen,

          Wenn es daran liegt und du die Angabe fuer den IE aber unbedingt haben willst, dann wirst du um JavaScript und Browserweiche wohl nicht drumherum kommen. Am einfachsten ist es wohl, irgendwo unterhalb des einleitenden body-Tags einen JavaScript-Bereich mit Code wie diesem zu notieren:
          if(document.getElementsByTagName && document.all)
            document.getElementsByTagName("body")[0].style.overflow = "auto";

          Entweder so oder man greift auf overflow-y: auto; siehe: http://www.styleassistant.de/tips/tip73.htm, was zwar proprietaer ist, aber immerhin ohne JS die unter NN 6.x / Mozilla erscheinenden Geisterscrollbars unterdrueckt. Ich habe mich schon lange gewundert, warum meine aktuellen Projekte in diesen Browsern so IFRAME-aehnliche Bereiche hatten, oft nur ca. das halbe Browserfenster gross. Bis mir vor ein paar Tagen overflow: auto; als Problemursache auffiel und in diesem Fall ist das genannte overflow-y IMHO eine echte Loesung, bis die Mozilla-Leute das behoben haben.

          Ansonsten waere noch if(document.body)document.body.style.overflow="auto"; eine JS-Moeglichkeit, das nur IEs anzubieten.

          MfG, Thomas

          1. Ich habe mich schon lange gewundert, warum meine aktuellen Projekte in diesen Browsern so IFRAME-aehnliche Bereiche hatten, oft nur ca. das halbe Browserfenster gross. Bis mir vor ein paar Tagen overflow: auto; als Problemursache auffiel und in diesem Fall ist das genannte overflow-y IMHO eine echte Loesung, bis die Mozilla-Leute das behoben haben.

            Nachtrag: Hier mal ein Beispiel dieses "Phaenomens":
            Mozilla 0.9.7 mit body {overflow: auto;} http://www.datenverdrahten.de/test/ards_moz097.gif
            Mozilla 0.9.7 mit body {overflow-y: auto;}, was er nicht kennt http://www.datenverdrahten.de/test/ards_moz097_mitfix.gif

            Das Problem ruehrt nicht von der breiten Tabelle her (die hier auch nur zur Kontrolle der Dateneingabe dient), sondern erscheint auch bei anderen Konstellationen mit overflow: auto.

            Da es sicht hier um eine Art "Web-basiertes Intranet" fuer eine medizinische Studie handelt, ist das nicht so gravierend, aber hierbei fiel mir das besonders negativ auf, zumal Eingabefelder und andere Inhalte einfach verschwanden.

            Da das overflow: auto auch nur fuer den IE bestimmt war, ist der Kompromiss overflow-y: auto insgesamt eine praktikable Loesung: http://www.datenverdrahten.de/test/ards_ie6.gif.

            MfG, Thomas