2010-12-16 9 views

Antwort

2
#center { 
    display:table-cell; 
    width:400px; 
    height:400px; 
    border:1px solid #444; 
    margin:auto; 
    vertical-align:middle; 
    text-align:center} 

Dies stellt die div wie eine Tabellenzelle behandelt werden, die hervorragende Unterstützung hat zum Zentrieren. Sie benötigen kein CSS für das Bild.

+0

+1 für die Informationen :) Akzeptiert – Blur

-1

Sie sein werden den #center img Abschnitt aktualisieren möchten:

#center img { 
    position: relative; 
    left: 148px; 
    top: 148px; 
} 

Das Zentrum des Behälters 200px wäre. Wenn Sie das Bild um 52 Pixel versetzen, wird der Bildmittelpunkt auf die Mitte des Containers gesetzt.

+0

ja für das aktuelle Bild arbeiten. wenn ich das Bild mit anderer Größe ersetze es zurück zu meiner Frage. – Blur

+0

Oh, heh ... muss dort in den "wörtlichen Modus" gerutscht sein und auf den Fall nach einem Bild ohne unbekannte Höhe und Breite geantwortet haben. Entschuldigen Sie. Sie benötigen ein Skript, aber der Ansatz ist der gleiche: Holen Sie sich die Bildgröße und positionieren Sie sie dann auf 200 - (imageWidth/2) und 200 - imageHeight/2) –

+0

@yjoseph, Junge, ist mein Gesicht rot! Ich habe einfach die einfache, saubere Lösung übersprungen, oder? Gute Arbeit! –

3

Eine Option wäre die Verwendung von CSS. Sie können es inline stylen (wenn Sie aus der Datenbank ausgeben, ist dies manchmal der beste Weg). Oder weisen Sie es einer Klasse zu. So oder so:

background:url(http://i.stack.imgur.com/TW66h.png) 50% 50% no-repeat; 

http://jsfiddle.net/VTgWg/1/

Hier ist eine Demo unterschiedlicher Größe Bilder zeigt: http://jsfiddle.net/r2wm2/1/

Ich habe so gesehen Fälle, in denen Sie das Bild verknüpfen möchten. Hier ist ein Beispiel für die div für einen <a> Tag Austausch: http://jsfiddle.net/zSuzm/1/

+0

+1 Ich mag diese, aber ich möchte es ohne Inline-Stil, wenn möglich. – Blur

1

Diese CSS arbeiten auf Ihrem Beispiel:

#center {width:400px; height:400px; border:1px solid #444; margin:auto; display: table-cell; vertical-align: middle;} 
#center img { margin:auto; display:block;} 
+0

Was ist ein Unterschied zwischen 'margin: auto', den ich auf das Bild gesetzt habe. – Blur

+0

Ich habe dein Beispiel nicht betrachtet, tut mir leid. Probieren Sie dieses kurze Tutorial: http://www.w3.org/Style/Examples/007/center.en.html –

+0

Ich habe meine Antwort aktualisiert, nachdem ich den von Ihnen bereitgestellten Link angesehen habe. –

Verwandte Themen