2013-02-27 10 views
31

Ich versuche, die Eltern div nur so breit wie die Kinder Divs. Durch die automatische Breite passt der Eltern-Div den gesamten Bildschirm an. Die Kinder-Divs werden je nach Inhalt unterschiedlich breit sein, daher muss ich das Eltern-Div entsprechend anpassen. Danke für Ihre Hilfe!Wie eine Eltern div Auto-Größe auf die Breite der Kinder divs

<div style='width:auto;'> 
     <div style="width: 135px; float: left;"> 
      <h4 style="padding-right: 5px; padding-left: 15px;">Column1</h4> 
      <dl style="padding-right: 5px; padding-left: 15px; margin-top: -8px; overflow-x: hidden;"> 
       <dd style="white-space: nowrap;">1</dd> 
       <dd style="white-space: nowrap;">2</dd> 
      </dl> 

      <h4 style="padding-right: 5px; padding-left: 15px;">Column1</h4> 
      <dl style="padding-right: 5px; padding-left: 15px; margin-top: -8px; overflow-x: hidden;">  
       <dd style="white-space: nowrap;">1</dd> 
       <dd style="white-space: nowrap;">2</dd> 
      </dl> 
     </div> 

     <div style="width: 135px; float: right;"> 
      <h4 style="padding-right: 5px; padding-left: 10px;">Column2</h4> 
      <dl style="padding-right: 5px; padding-left: 15px; margin-top: -8px; overflow-x: hidden;"> 
       <dd style="white-space: nowrap;">1</dd> 
       <dd style="white-space: nowrap;">2</dd> 
       <dd style="white-space: nowrap;">3</dd> 
      </dl> 
     </div> 
</div> 

Antwort

39

Ihre innere <div> Elemente sollten beide wahrscheinlich float:left sein. Divs Größe auf 100% der Größe ihrer Containerbreite automatisch. Versuchen Sie mit display:inline-block anstelle von width:auto auf dem Container Div. Oder möglicherweise float:left der Container und gelten auch overflow:auto. Hängt davon ab, was Sie genau suchen.

+0

Dank Madbreaks. Es ist etwas, was ich nicht versucht habe, beide Schwimmer links zu machen. – bradley4

+0

Sicher Sache. Wenn Sie das Gefühl haben, dass ich Ihnen geholfen habe, ziehen Sie es in Betracht, meine Antwort zu verbessern, oder akzeptieren Sie sie, wenn Sie das Gefühl haben, dass es korrekt ist. – Madbreaks

+0

Ich muss noch 5 Minuten warten, um es zu akzeptieren =) – bradley4

7

Das übergeordnete div (ich nehme das äußerste div an) ist display: block und wird den gesamten verfügbaren Bereich seines Containers (in diesem Fall der Körper) ausfüllen, den es kann. Verwenden Sie einen anderen Anzeigetyp - inline-block ist wahrscheinlich das, was Sie für sich:

http://jsfiddle.net/a78xy/

Verwandte Themen