Wie kann ich eine horizontale Zentrierung einer <div>
in einem anderen <div>
CSS verwenden?
<div id="outer">
<div id="inner">Foo foo</div>
</div>
Wie kann ich eine horizontale Zentrierung einer <div>
in einem anderen <div>
CSS verwenden?
<div id="outer">
<div id="inner">Foo foo</div>
</div>
Nun, es ist mir gelungen, eine Lösung zu finden, die vielleicht für alle Situationen geeignet ist, aber JavaScript verwendet:
Hier ist die Struktur:
<div class="container">
<div class="content">Your content goes here!</div>
<div class="content">Your content goes here!</div>
<div class="content">Your content goes here!</div>
</div>
Und hier ist der JavaScript-Schnipsel:
$(document).ready(function() {
$('.container .content').each( function() {
container = $(this).closest('.container');
content = $(this);
containerHeight = container.height();
contentHeight = content.height();
margin = (containerHeight - contentHeight) / 2;
content.css('margin-top', margin);
})
});
Wenn Sie es in einem responsiven Ansatz verwenden möchten, können Sie Folgendes hinzufügen:
$(window).resize(function() {
$('.container .content').each( function() {
container = $(this).closest('.container');
content = $(this);
containerHeight = container.height();
contentHeight = content.height();
margin = (containerHeight - contentHeight) / 2;
content.css('margin-top', margin);
})
});
Wir können verwenden Flexbox um dies ganz einfach zu erreichen:
<div id="outer">
<div id="inner">Foo foo</div>
</div>
Zentrieren eines Divs innerhalb eines Divs Horizontal :
#outer {
display: flex;
justify-content: center;
}
Zentrieren eines Divs innerhalb eines Divs vertikal :
#outer {
display: flex;
align-items: center;
}
Und, um das Div vertikal und horizontal vollständig zu zentrieren:
#outer{
display: flex;
justify-content: center;
align-items: center;
}
Fügen Sie einfach diesen CSS-Inhalt in Ihre CSS-Datei ein. Es wird den Inhalt automatisch zentrieren.
Horizontal zentriert ausrichten in CSS:
#outer {
display: flex;
justify-content: center;
}
Vertikal ausrichten + horizontal zentrieren in CSS:
#outer {
display: flex;
justify-content: center;
align-items: center;
}
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.
37 Stimmen
Von diesen großartigen Antworten möchte ich nur hervorheben, dass Sie "#inner" eine "Breite" geben müssen, oder es wird "100%" sein, und Sie können nicht sagen, ob es bereits zentriert ist.
1 Stimmen
display:flex;
ist am einfachsten zu merken (Chrome gibt Ihnen Anleitungen in DevTools) und unterstützt die Zentrierung auf beiden Achsen.