Volker: div overflow:scroll - Keine Scrollbalken vorhanden

Konnte leider nirgendwo im Forum einer Antwort auf mein Problem finden. Deswegen schreibe ich mal einen neuen Thread.

habe folgendes Element in der css-Datei:

div#content {
 width:530px;
 height:500px;
 background-image:url(images/All_03.gif);
 position:absolute;
 left:100px;
 top:250px;
 padding-left:20px;
        overflow: auto;
}

Wenn es jetzt aber zu einem Overflow kommt, werden weder im IE noch in FF die Scrollbars angezeigt. Beim IE kann man mittels des Scrollrades im Text scrollen, im FF muss man den Text markieren und runterziehen, damit es funktioniert.
Wo erscheinen den die Scrollbalen? Direkt in dem DIV oder Rechts daneben (wenn ihr versteht was ich meine)
Rechts daneben ist nämlich direkt das nächste Div und das würde die dann ja evtl überdecken, oder?

Habe auch mal probiert overflow auf scroll zu setzen, da kommt dann aber lediglich beim IE unten ein (horizontaler) Scrollbalken und nicht wie benötigt ein vertikaler.

Hoffe ihr könnt mir irgendwie helfen

  1. Konnte leider nirgendwo im Forum einer Antwort auf mein Problem finden. Deswegen schreibe ich mal einen neuen Thread.

    habe folgendes Element in der css-Datei:

    div#content {
    width:530px;
    height:500px;
    background-image:url(images/All_03.gif);
    position:absolute;
    left:100px;
    top:250px;
    padding-left:20px;
            overflow: auto;
    }

    ich weiss nicht obs hilft, aber versuch mal folgendes:
    div#content {
     width:530px;
     height:500px;
     background-image:url(images/All_03.gif);
     position:absolute;
     left:100px;
     top:250px;
     padding-left:20px;
     overflow-y:scroll;
     overflow-x:auto;
    }

    wobei das argument scroll zwingend einen balken erzeugt und auto nur wenns nötig ist oder so ähnlich... :)

    grüße,
    der doktor

  2. Hallo Volker,

    Wenn es jetzt aber zu einem Overflow kommt, werden weder im IE noch in FF die Scrollbars angezeigt. Beim IE kann man mittels des Scrollrades im Text scrollen, im FF muss man den Text markieren und runterziehen, damit es funktioniert.

    Ich sehe überhaupt kein Problem; bei mir erscheinen in allen relevanten Browsern Scrollbalken, so wie von dir gewünscht, wenn man nur genug Inhalt in das DIV-Element packt. Hast du diesem denn auch das Attribut id="content" gegeben?

    Gruß Gernot

  3. Hallo Volker

    div#content {
    width:530px;
    height:500px;
    background-image:url(images/All_03.gif);
    position:absolute;

    Ist absolute Positionierung wirklich nötig?

    left:100px;
    top:250px;
    padding-left:20px;

    Dir ist bewusst, dass dein Div damit eine Breite von 550px hat?
    (#content erstreckt sich also bis 650px)

    overflow: auto;
    }

    ... Beim IE kann man mittels des Scrollrades im Text scrollen, im FF muss man den Text markieren und runterziehen, damit es funktioniert.

    Also funktioniert overflow:auto, wie von dir gewünscht (das Scrollrad
    funktioniert bei Mozillas leider nicht).

    Wo erscheinen den die Scrollbalen? Direkt in dem DIV oder Rechts daneben (wenn ihr versteht was ich meine)

    normalerweise innerhalb des Elementes

    Rechts daneben ist nämlich direkt das nächste Div und das würde die dann ja evtl überdecken, oder?

    Wirklich daneben oder auch absolut positioniert?
    (eventuell auf 630px, womit es um 20px überlappt)

    Habe auch mal probiert overflow auf scroll zu setzen, ...

    Damit erzeugst du die Scrollbalken immer, egal ob nötig.

    ... da kommt dann aber lediglich beim IE unten ein (horizontaler) Scrollbalken und nicht wie benötigt ein vertikaler.

    Wohl weil der vertikale Scrollbalken verdeckt wird.

    Gib dem Nachbarelement doch einmal zum Test einen Border, aber keinen
    Hintergrund, damit du zwar seine Position siehst, es aber transparent ist.

    Hoffe ihr könnt mir irgendwie helfen

    Verzichte auf absolute Positionierungen, wo sie nicht in Ausnahmefällen für
    ganz bestimmte Effekte nötig sind.
    Bestimme die Anordnung der Seitenelemente stattdessen mit margin, padding,
    float und clear.

    Auf Wiederlesen
    Detlef

    --
    - Wissen ist gut
    - Können ist besser
    - aber das Beste und Interessanteste ist der Weg dahin!
    1. Hallo Volker

      div#content {
      width:530px;
      height:500px;
      background-image:url(images/All_03.gif);
      position:absolute;

      Ist absolute Positionierung wirklich nötig?

      Weis jetzt gerade garnicht wad absolute genau bedeutet. Habe eine Seite von nem Kumpel weiterbearbeitet, und da war das drin.

      left:100px;
      top:250px;
      padding-left:20px;

      Dir ist bewusst, dass dein Div damit eine Breite von 550px hat?
      (#content erstreckt sich also bis 650px)

      Das ist mir neu, und da wird dann auch wohl das Problem liegen. Besten Dank

      Wirklich daneben oder auch absolut positioniert?
      (eventuell auf 630px, womit es um 20px überlappt)

      Ganz genau. Das wird's sein.

      » »» Hoffe ihr könnt mir irgendwie helfen

      JA. DANKE! Es funktioniert!!!

      Auf Wiederlesen
      Detlef

      Gruß Volker

      1. Hallo Volker

        Weis jetzt gerade garnicht wad absolute genau bedeutet.

        Lies mal position (Positionsart).
        Mit position:absolute nimmst du ein Element praktisch vollständig aus dem
        Elementfluss der Seite heraus, um es dann an der durch top und left
        angegebenen Position über den restlichen Seiteninhalt zu legen, wie ein
        Aufkleber.
        Wie sich mehrere so positionierten (aufgeklebte) Elemente überlappen, kann
        dann mit z-index (Schichtposition bei Überlappung) festgelegt werden.

        Auf Wiederlesen
        Detlef

        --
        - Wissen ist gut
        - Können ist besser
        - aber das Beste und Interessanteste ist der Weg dahin!
        1. Hallo Detlef.

          Mit position:absolute nimmst du ein Element praktisch vollständig aus dem
          Elementfluss der Seite heraus, um es dann an der durch top und left
          angegebenen Position über den restlichen Seiteninhalt zu legen, wie ein
          Aufkleber.

          Und was ist mit right und bottom? ;-)

          Einen schönen Samstag noch.

          Gruß, Ashura

          --
          Selfcode: sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:) fl:( ss:) ls:[ js:|
          30 Days to becoming an Opera8 Lover -- Day 21: Toolbars
          Meine Browser: Opera 8.02 | Firefox 1.0.6 | Lynx 2.8.5 | Netscape 4.7 | IE 6.0
          [Deshalb frei! - Argumente pro freie Software]
          1. Hallo Ashura

            Und was ist mit right und bottom? ;-)

            Mir ging es weniger um die konkreten Möglichkeiten der Positionsangabe, als
            um die grundsätzliche, aufkleberartige Funktion von position:absolute,
            wodurch ich dann wohl nicht zu Ende dachte.

            Meine Antwort war unvollständig, du hast selbstverständlich recht.

            Bloß gut dass immer jemand aufpasst. ;-)
            (wie z.B. auch bei OnChange soll Select-Feld deaktivieren,
            dort sollten noch ein paar "nicht hilfreich" hin)

            Auf Wiederlesen
            Detlef

            --
            - Wissen ist gut
            - Können ist besser
            - aber das Beste und Interessanteste ist der Weg dahin!