Dies ist wahrscheinlich eine dumme Frage, aber da die üblichen Methoden zum Ausrichten eines Bilds in der Mitte nicht funktionieren, dachte ich, ich würde sie stellen. Wie kann ich ein Bild in seinem Container-Div zentrieren (horizontal)?
Hier ist HTML und CSS. Ich habe auch das CSS für die anderen Elemente der Miniaturansicht eingefügt. Es läuft in absteigender Reihenfolge, so dass das höchste Element der Container von allem ist und das niedrigste in allem.
#thumbnailwrapper {
color: #2A2A2A;
margin-right: 5px;
border-radius: 0.2em;
margin-bottom: 5px;
background-color: #E9F7FE;
padding: 5px;
border: thin solid #DADADA;
font-size: 15px
}
#artiststhumbnail {
width: 120px;
height: 108px;
overflow: hidden;
border: thin solid #DADADA;
background-color: white;
}
#artiststhumbnail:hover {
left: 50px
}
<!--link here-->
<a href="NotByDesign">
<div id="thumbnailwrapper">
<a href="NotByDesign">
<!--name here-->
<b>Not By Design</b>
<br>
<div id="artiststhumbnail">
<a href="NotByDesign">
<!--image here-->
<img src="../files/noprofile.jpg" height="100%" alt="Not By Design" border="1" />
</a>
</div>
<div id="genre">Punk</div>
</div>
Okay, ich habe das Markup ohne PHP hinzugefügt, sollte also leichter zu sehen sein. Keine der beiden Lösungen scheint in der Praxis zu funktionieren. Der Text oben und unten kann nicht zentriert werden, und das Bild sollte in seinem Container div zentriert sein. Der Container hat einen versteckten Überlauf, daher möchte ich die Bildmitte sehen, da dort normalerweise der Fokus liegt.
img
unterliegen,text-align: center
sofern siedisplay
nicht geändert wurden.text-align: center
img
in der beigefügt wara
. Ich bin dumm.Antworten:
Der CSS-Typ schlägt Folgendes vor:
Also vielleicht übersetzen:
Hier ist meine Lösung in: http://jsfiddle.net/marvo/3k3CC/2/
quelle
margin: auto
gibt, die davon abhängen, dass das enthaltende Element einen bestimmten Breitenwert hat.img
bewirken , und ich glaube, dass eine Breite definiert werden müsste, um einen Effekt zu erzielenauto
.CSS Flexbox kann dies
justify-content: center
für das übergeordnete Bildelement tun . Fügen Sie es hinzu, um das Seitenverhältnis des Bildes beizubehaltenalign-self: flex-start;
.HTML
CSS
Ausgabe:
Code-Snippet anzeigen
quelle
align-items
zum vertikalen Zentrieren verwendet werden. Die verschiedenen Randlösungen funktionieren bei mir nicht, da das zu zentrierende Element keine Breiten- und Höhenattribute hat.align-self
auf das Bildelement wie dieses anwenden jsfiddle.net/3fgvkurdIch habe diese Lösung unten auf der W3-CSS-Seite gefunden und sie hat mein Problem beantwortet.
Quelle: http://www.w3.org/Style/Examples/007/center.en.html
quelle
max-width: 100%; max-height: 100%;
die Größe des Bildes, wenn der Bildschirm kleiner als das Bild ist, aber in diesem Fall ist er nicht zentriert. Irgendwelche Vorschläge, wie man mit diesen beiden AttributenDies würde es auch tun
quelle
text-align:center;
undmargin:0 5px;
? Ich fügte hinzu, a;
Das Beste, was ich gefunden habe (was in allen Browsern zu funktionieren scheint), um ein Bild oder ein Element horizontal zu zentrieren, ist, eine CSS-Klasse zu erstellen und die folgenden Parameter einzuschließen:
CSS
Anschließend können Sie die von Ihnen erstellte CSS-Klasse wie folgt auf Ihr Tag anwenden:
HTML
Sie können das CSS auch in Ihre Elemente einbinden, indem Sie folgende Schritte ausführen:
... aber ich würde nicht empfehlen, CSS inline zu schreiben, da Sie dann mehrere Änderungen an all Ihren Tags mithilfe Ihres zentrierenden CSS-Codes vornehmen müssen, wenn Sie jemals den Stil ändern möchten.
quelle
Das habe ich letztendlich getan:
Dadurch wird die Bildhöhe auf 600 Pixel begrenzt und der übergeordnete Container horizontal zentriert (oder verkleinert, wenn die übergeordnete Breite kleiner ist), wobei die Proportionen beibehalten werden.
quelle
Ich werde auf ein Glied gehen und sagen, dass das Folgende das ist, wonach Sie suchen.
Beachten Sie, dass meines Erachtens in der Frage versehentlich Folgendes weggelassen wurde (siehe Kommentar):
Was Sie also brauchen, ist:
http://jsfiddle.net/userdude/XStjX/3/
quelle
Um ein Bild horizontal zu zentrieren, funktioniert dies wie folgt:
quelle
Fügen Sie dies Ihrem CSS hinzu:
Nur auf ein untergeordnetes Element verweisen, das in diesem Fall das Bild ist.
quelle
Setzen Sie eine gleiche Pixelauffüllung für links und rechts:
quelle
Legen Sie das Bild in ein
newDiv
. Stellen Sie sicher, dass die Breite des Inhaltsdiv
dem Bild entspricht. Bewerben Sie sichmargin: 0 auto;
auf dienewDiv
. Das sollte dasdiv
Innere des Containers zentrieren.quelle
Positionierung verwenden. Folgendes hat bei mir funktioniert ... (horizontal und vertikal zentriert)
Mit Zoom in die Bildmitte (Bild füllt das Div):
Ohne Zoom auf die Mitte des Bildes (Bild ist nicht füllen Sie das div):
quelle
Sie können Ihren Inhalt mithilfe der Flexbox mit minimalem Code ausrichten
HTML
CSS
js Geigenlink https://jsfiddle.net/7un6ku2m/
quelle
Zentrieren Sie ein Bild in einem Div
quelle
Ich habe ein paar Möglichkeiten ausprobiert. Aber dieser Weg funktioniert perfekt für mich
quelle
Eine reaktionsschnelle Möglichkeit, ein Bild zu zentrieren, kann folgendermaßen aussehen:
quelle
Wenn Sie dies inline tun müssen (z. B. bei Verwendung eines Eingabefelds), ist
hier ein kurzer Hack, der für mich funktioniert hat: Umgeben Sie Ihren (in diesem Fall Bildlink)
in einem
div
mitstyle="text-align:center"
quelle
quelle
<div>
oder<section>
sowohl vertikale als auch horizontale Mitte der Seite korrigieren möchten, können Sie einfach diesen Stilcode verwenden !!!!Ja, der Code wie dieser funktioniert gut
aber nur um dich daran zu erinnern, den Stil für das Bild
Der endgültige Code ist also wie Beispiel
quelle
Die Verwendung der Flex-Eigenschaft für den Container ist die richtige Antwort, um sowohl vertikal als auch horizontal zentrieren zu können.
Die oberste Antwort hier funktioniert NICHT zum vertikalen, sondern nur horizontalen Zentrieren eines Elements.
quelle
quelle