alias5000: IE7: Overflow:auto ->Inhalt wird nicht gescrollt

Hallo zusammen!
Ich habe einen etwas seltsamen Bug hier am Laufen und finde den Grund nicht.
Folgendes:
Die Box <div id="main"></div> ist eine Box mit festgelegter Höhe und Breite, sowie der CSS-Property overflow:auto;
Tritt in ihr ein übergroßer Text auf, werden je nach Bedarf Scrollbars angezeigt. Dies funktioniert in allen getesteten Browsern.

Allerdings tritt im IE7 bei mir das Problem auf, dass ich die Scrollbar hoch- und runterschieben kann, wie ich will, der Inhalt bleibt einfach immer stehen. Beim IE6 und IE8 funktionierts.

Folgender CSS-Code wird der main-div zugewiesen:

div#main {  
height:460px;  
width:515px;  
overflow:auto;  
margin-left:0;  
padding-left:25px;  
padding-top:10px;  
}

Habt ihr eine Idee, wie ich des Rätsels Lösung näher kommen könnte?

Gruß
alias5000

  1. hi,

    Folgender CSS-Code wird der main-div zugewiesen:

    div#main {

    }

      
    
    > Habt ihr eine Idee, wie ich des Rätsels Lösung näher kommen könnte?  
      
    Wie sieht denn der (Original) HTML-Output aus, der beim Browser ankommt?  
      
    Alles vom öffnenden `<div id="main"> bis zum schliessenden </div>`{:.language-html}, der Rest sollte natürlich ein [Valides](http://validator.w3.org/#validate_by_input) Dokument sein.  
      
    mfg
    
    -- 
    echo '<pre>'; var\_dump($Malcolm\_Beck`s); echo '</pre>';  
      
    array(2) {  
      ["SELFCODE"]=>  
      string(74) "ie:( fl:) br:> va:? ls:? fo:) rl:| n4:# ss:{ de:? js:} ch:? sh:( mo:? zu:("  
      ["Meaningful"]=>  
      string(?) "[Der Sinn des Lebens ist deinem Leben einen Sinn zu geben](http://www.youtube.com/watch?v=VS9ecfD0K9c)"  
    }
    
    1. hi,
      danke für deine Reaktion!
      HTML und CSS validieren.
      Der HTML-Code sieht folgendermaßen aus:

      <div id="main">  
      <div class="inside">  
        
      <div class="mod_article block" id="test">  
        
      <div class="ce_text block">  
        
      <h1>Überschrift1</h1>  
        
      <p>Lorem ipsum...</p>  
        
      <p>&nbsp;</p>  
        
      <p>&nbsp;</p>  
        
      </div>  
        
      <div class="ce_text block">  
        
      <h1>dfsd</h1>  
        
      <p>Lorem ipsum  - ganz langer text...</p>  
        
      </div>  
        
      </div>  
        
      </div>  
      </div>  
      
      

      Die CSS-Eigenschaften, die die divs innerhalb haben, habe ich bereits jeweils einzeln deaktiviert und getestet - ohne Erfolg.

      Vielen Dank für eure Antworten
      viele Grüße
      alias5000

      Anhang:

      Ich liste sie trotzdem mal unten, damit es vollständig ist.

      Das Eltern-Div zu div#main (div#container) besitzt folgende Stilvorgaben:

        
      div#container  
      background-color:#FFFFFF;  
      clear:both;  
      height:500px;  
      overflow:hidden;  
      padding:10px;  
      }
      

      Auch hier habe ich die CSS-Eigenschaften einmal ausgeblendet - ohne Erfolg.

      CSS der divs innerhalb div#main:

        
      .inside  
      position:relative;  
      text-align:left;  
      }  
        
      .block  
      overflow:hidden; /*hat keine Auswirkung auf den Fehler*/  
      }  
        
      /*weggelassen: Items zur Schriftformatierung*/
      
      1. hi,

        HTML und CSS validieren.

        In deinem Fall auch unbedingt das CSS validieren.

        Um erst mal eine mögliche Ursache auszuschliessen:

        Ist dieses CSS Copy&Paste? Schau dir mal die Syntax genauer an.

        div#container
          background-color:#FFFFFF;
        }

        
        > Auch hier habe ich die CSS-Eigenschaften einmal ausgeblendet - ohne Erfolg.  
          
        Was meinst du mit ausgeblendet?  
          
        
        > ~~~css
          
        
        > .inside  
        >   position:relative;  
        > }  
        >   
        > .block  
        >   overflow:hidden; /*hat keine Auswirkung auf den Fehler*/  
        > }
        
        

        Dieses CSS kann so auch nicht funktionieren, wenn es so in deiner Original-CSS steht, einmal durch den CSS-Valligator jagen.

        mfg

        --
        echo '<pre>'; var_dump($Malcolm_Beck`s); echo '</pre>';
        array(2) {
          ["SELFCODE"]=>
          string(74) "ie:( fl:) br:> va:? ls:? fo:) rl:| n4:# ss:{ de:? js:} ch:? sh:( mo:? zu:("
          ["Meaningful"]=>
          string(?) "Der Sinn des Lebens ist deinem Leben einen Sinn zu geben"
        }
        1. Hi,

          hi,
          In deinem Fall auch unbedingt das CSS validieren.

          Hatte ich gemacht. HTML und CSS validieren.

          Um erst mal eine mögliche Ursache auszuschliessen:

          Ist dieses CSS Copy&Paste? Schau dir mal die Syntax genauer an.

          Nein, das ist kein Copy&Paste. Um genau zu sein, wurde die CSS mit dem CSS-Framework des CMS Typolight aufgebaut. Da der Validator nicht meckert, ist das Stylesheet auch syntaktisch i.O.
          Ich denke aber, dass es eher ein genereller Fehler ist, der weniger etwas mit den Typolight-Gegebenheiten zu tun hat, da der CSS-Code inhaltlich von mir stammt. Lediglich die syntaktische Umsetzung hat das Framework generiert.

          »» ~~~css

          »» div#container
          »»   background-color:#FFFFFF;
          »» }

          
          > »» Auch hier habe ich die CSS-Eigenschaften einmal ausgeblendet - ohne Erfolg.  
          >   
          > Was meinst du mit ausgeblendet?  
          
          Kurz rausgenommen, um zu sehen, ob das Fehlen dieser Werte einen Einfluss auf das Problem hat.  
          
          >   
          > »» ~~~css
            
          
          > »» .inside  
          > »»   position:relative;  
          > »» }  
          > »»  
          > »» .block  
          > »»   overflow:hidden; /*hat keine Auswirkung auf den Fehler*/  
          > »» }
          
          

          Dieses CSS kann so auch nicht funktionieren, wenn es so in deiner Original-CSS steht, einmal durch den CSS-Valligator jagen.

          Könntest du erläutern, warum dies nicht tun kann?

          Gruß
          alias5000

          1. hi,

            Könntest du erläutern, warum dies nicht tun kann?

            Jage mal folgende 7 Zeilen durch diesen Validator:

            .inside  
            position:relative;  
            text-align:left;  
            }  
            .block  
            overflow:hidden; /*hat keine Auswirkung auf den Fehler*/  
            }
            

            Da fehlen die öffnenden Klammern.

            mfg

            --
            echo '<pre>'; var_dump($Malcolm_Beck`s); echo '</pre>';
            array(2) {
              ["SELFCODE"]=>
              string(74) "ie:( fl:) br:> va:? ls:? fo:) rl:| n4:# ss:{ de:? js:} ch:? sh:( mo:? zu:("
              ["Meaningful"]=>
              string(?) "Der Sinn des Lebens ist deinem Leben einen Sinn zu geben"
            }
            1. hi,

              »» Könntest du erläutern, warum dies nicht tun kann?

              Jage mal folgende 7 Zeilen durch diesen Validator:

              .inside

              position:relative;
              text-align:left;
              }
              .block
              overflow:hidden; /hat keine Auswirkung auf den Fehler/
              }

              
              >   
              > Da fehlen die öffnenden Klammern.  
              
              Hoppala, das habe ich übersehen - aber nur beim Kopieren (aus Firebug kopiert.  
              Wie gesagt, ich habe die gesamte Seite mit HTML und CSS komplett und erfolgreich durch Validator gejagt.  
                
              Mein Problem ist, dass ich nicht weiß, wo der Fehler herkommt, die Lokalisierung des Problems gelingt mir also nicht.  
              Ich könnte hier größere Auschnitte aus HTML und CSS posten, aber das wird dann sehr länglich.  
                
              Das Problem tritt wie gesagt ausschließlich beim Internet Explorer 7 auf. Nicht darunter, nicht darüber  
                
              Gruß  
              alias5000
              
              1. hi,

                Mein Problem ist, dass ich nicht weiß, wo der Fehler herkommt, die Lokalisierung des Problems gelingt mir also nicht.

                Es liegt am CSS, genauer gesagt an der Klasse .inside{}, siehe hier.

                mfg

                --
                echo '<pre>'; var_dump($Malcolm_Beck`s); echo '</pre>';
                array(2) {
                  ["SELFCODE"]=>
                  string(74) "ie:( fl:) br:> va:? ls:? fo:) rl:| n4:# ss:{ de:? js:} ch:? sh:( mo:? zu:("
                  ["Meaningful"]=>
                  string(?) "Der Sinn des Lebens ist deinem Leben einen Sinn zu geben"
                }
                1. hi,

                  »» Mein Problem ist, dass ich nicht weiß, wo der Fehler herkommt, die Lokalisierung des Problems gelingt mir also nicht.

                  Es liegt am CSS, genauer gesagt an der Klasse .inside{}, siehe hier.

                  mfg

                  Tatsächlich, herzlichen Dank! :-)

                  Darf ich noch fragen, wie du darauf gekommen bist, bzw. mit was dies zu tun hatte?

                  Viele Grüße
                  alias5000

                  1. hi,

                    Darf ich noch fragen, wie du darauf gekommen bist,

                    Debugging ;)
                    Ich habe die Klassen einzeln von unten nach oben entfernt, um erstmal zu testen, ob es an denen liegt.

                    bzw. mit was dies zu tun hatte?

                    Vermutlich einer der vielen IE-Bugs -- die IEs haben soviele, dass ich mittlerweile nicht mal suche, welcher Bug das sein könnte.

                    mfg

                    --
                    echo '<pre>'; var_dump($Malcolm_Beck`s); echo '</pre>';
                    array(2) {
                      ["SELFCODE"]=>
                      string(74) "ie:( fl:) br:> va:? ls:? fo:) rl:| n4:# ss:{ de:? js:} ch:? sh:( mo:? zu:("
                      ["Meaningful"]=>
                      string(?) "Der Sinn des Lebens ist deinem Leben einen Sinn zu geben"
                    }
                    1. hi,

                      »» Darf ich noch fragen, wie du darauf gekommen bist,

                      Debugging ;)
                      Ich habe die Klassen einzeln von unten nach oben entfernt, um erstmal zu testen, ob es an denen liegt.

                      tja, dann habe ich diesen Wert wohl übersehen -.-
                      Nächstes Mal klappts koffentlich auch so mit dem Entkäfern :-)

                      »» bzw. mit was dies zu tun hatte?

                      Vermutlich einer der vielen IE-Bugs -- die IEs haben soviele, dass ich mittlerweile nicht mal suche, welcher Bug das sein könnte.

                      oh ja!

                      viele Grüße
                      alias5000