2010-01-12 22 views
5

Ich habe dieses Set von HTML und CSS. Ich möchte, dass die kleinen Gadgets-Blöcke nach links schweben, aber innerhalb des absolut positionierten Gadget-Wrappers zentriert sind.Center Floating Divs innerhalb von absolut positioniert div

So ist der Gadget-Wrapper absolut am unteren Rand einer Seite positioniert. Es enthält x Anzahl der Gadgets, die innerhalb des Wrappers verbleiben.

Alle diese Gadgets sollten in der Verpackung zentriert sein - ist das möglich und wie ...? Das ist wirklich mich zu töten ....

HTML

<div id="gadget-wrapper"> 
    <div class="gadget"> 
     <h2>1</h2> 
     <div class="value-holder critical">not set</div> 
     <div class="value-holder non-critical">not set</div> 
    </div> 
    <div class="gadget"> 
     <h2>2</h2> 
     <div class="value-holder critical">not set</div> 
     <div class="value-holder non-critical">not set</div> 
    </div> 
    <div class="gadget"> 
     <h2>3</h2> 
     <div class="value-holder critical">not set</div> 
     <div class="value-holder non-critical">not set</div> 
    </div> 
</div> 

CSS

#gadget-wrapper { 
    width: 900px; 
    font-family: "Century Gothic"; 
    color: #FFF; 
    position: absolute; 
    bottom: 10px; 
    outline: 1px solid green; 
} 

.gadget h2 { 
    margin: 0px; 
    font-weight: normal; 
    font-size: 16px; 
} 

.gadget { 
    min-width: 120px; 
    margin-right: 10px; 
    padding: 5px; 
    -webkit-border-radius: 10px; 
    background-color: #383838; 
    opacity: 0.75; 
    float: left; 
    border: 4px solid #000; 
} 

.value-holder.critical.active { 
    color: #FF0000; 
} 

.value-holder.non-critical.active { 
    color: #FFFF00; 
} 

.value-holder { 
    font-size: 28px; 
    float: left; 
    width: 50%; 
    text-align: center; 
} 

Antwort

7

Haben Sie versucht, die Herstellung der gadget Elemente inline und sie zum Zentrum mit text- Ausrichten ausrichten?

#gadget-wrapper { 
    ... 
    text-align: center; 
} 

.gadget { 
    display: inline; 
    float: none; 
} 

Dies könnte funktionieren, ich bin nur nicht sicher, wie die Block-Level-Elemente innerhalb verhalten (ich bin nicht in der Lage, dieses Recht jetzt zu testen). Sie können auch inline-block anstelle von inline versuchen.

+0

HA! Inline-Block funktioniert perfekt! – Riri

+0

Es funktioniert nicht in IE5.5, 6 oder 7 nach IETester. Sie stapeln sich übereinander, funktionieren aber auch in allem anderen perfekt. – Alex

+0

Das hat mir nur geholfen ... ich dachte, ich würde es dich wissen lassen. – webb

3

display: inline-block; funktioniert mit der ersten Antwort. stellen Sie sicher, dass Sie entfernt float: left;

Verwandte Themen