[CSS] Layer passt Größe nicht an

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [CSS] Layer passt Größe nicht an

    Ich habe folgendes Problem. Ich habe einen Layer, der für den Hintergrund auf der Seite verantwortlich ist. Dieser ist ca. 800px Breit. Wenn ich nun mehrere innere Layer, die eine größere Höhe haben als der Äussere, passen die Gecko Browser die Größe nicht automatisch an. Weiß einer woran das liegen könnte?


    Habe mal folgenden Beispielcode verfasst:

    Code:
    <!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\"  "http://www.w3.org/TR/html4/loose.dtd">
    <html><head><style>
    
    body{
        background: #FF4422;
        margin : 0px;
        min-height: 100%;
        text-align:center;
    }
    
    #center{
        width: 800px;
        height: 100%;
        margin : 0px auto;
        background: #666666;
    
        border-left: 1px solid #000000;
        border-right: 1px solid #000000;
    }
    
    
    
    </style></head><body>
    
    <div id="center">
    
         <div style="height: 1200px; width:200px; border: 1px solid #000000; background: #FFFFFF; float: left;">  
        </div>
    
        <div style="height: 500px; width:200px; border: 1px solid #000000; background: #FFFFFF; float: left;">  
        </div>
    
    </div>
    </body></html>
    Beim IE funktioniert es prima. Da ich noch ein Noob mit Layern bin, frage ich mich, was ich vergessen/falsch gemacht habe.

    Dank im voraus!

    Grüssle
    Zuletzt geändert von flolle; 31.03.2004, 20:55.

  • #2
    Re: [CSS] Layer passt Größe nicht an

    Original geschrieben von flolle
    Wenn ich nun mehrere innere Layer, die eine größere Höhe haben als der Äussere, passen die Gecko Browser die Größe nicht automatisch an. Weiß einer woran das liegen könnte?
    weil dein #center eine höhe von 100% hat.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Daran hatte ich schon mal gedacht, lasse ich allerdings die Höhe komplett weg, zeigt er bei den Gecko Browsern gar keinen Border an. Im IE funktioniert es ebenfalls einwandfrei.

      Eine fixe Größe kommt leider nicht in Frage, da der Inhalt dynamisch aus der DB kommt.

      Kann es sein, dass es an dem float:left; liegt und es keine Lösung für nicht IE Browser gibt?

      Danke!

      Kommentar


      • #4
        Original geschrieben von flolle
        Kann es sein, dass es an dem float:left; liegt und es keine Lösung für nicht IE Browser gibt?
        ach, da wird auch noch was gefloatet ... hab ich zuerst gar nicht gesehen.

        mit float nimmst du ein element aus dem elementfluss heraus, sprich es beeinflusst danach die höhe seines elternlementes nicht mehr.

        dem kannst du aber abhelfen, in dem du nach den beiden gefloateteten divs (und vor dem schliessen des umgebenden divs) noch ein (leeres) element einfügst, mit dem du das floaten wieder aufhebst.

        Code:
        <div id="center">
        
            <div style="...; float: left;">  
            </div>
        
            <div style="...; float: left;">  
            </div>
        
            [b]<div style="clear:left;"></div>[/b]
        </div>
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Danke, aber ich glaube ich bin heute morgen etwas zu

          Folgender Code produziert genau den selben Fehler. Nehme ich die Höhe bei dem äusseren Layer raus, wird er komplett ignoriert.

          Code:
          <!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\"  "http://www.w3.org/TR/html4/loose.dtd">
          <html><head><style>
          body{
              background: #FF4422;
              margin : 0px;
              text-align:center;
          }
          
          #center{
              width: 600px;
              height: 100%;
              margin : 0px auto;
              background: #666666;
          
              border-left: 1px solid #000000;
              border-right: 1px solid #000000;
          }
          
          </style></head><body>
          
          <div id="center">
           
               <div style="height: 1200px; width:200px; border: 1px solid #000000; background: #FFFFFF;  float: left;"> </div>
               <div style="height: 500px; width:200px; border: 1px solid #000000; background: #FFFFFF;  float: left;"> </div>
          
               <div style="clear:left;"></div>
          
          </div>
          </body></html>

          Grüssle

          Kommentar


          • #6
            probier das mal:
            Code:
            #center{
                width: 600px;
                margin : 0px auto;
                background: #666666;
            
                border-left: 1px solid #000000;
                border-right: 1px solid #000000;
                overflow: auto;
            }
            Kissolino.com

            Kommentar


            • #7
              Super! Besten Dank an Euch!

              Hat funktioniert!

              Grüssle

              Kommentar

              Lädt...
              X