Menu
CoddyTech

Die perfekte Zentrierung

Teil des Abschnitts Styling mit CSS der HTML-Journey von Coddy. Lektion 48 von 76.

In CSS ist das Erreichen der „perfekten Mitte“, also das horizontale und vertikale Zentrieren eines Elements innerhalb seines übergeordneten Elements, eine häufige Herausforderung beim Layout. Flexbox bietet eine elegante und unkomplizierte Lösung für dieses Problem. Mit den Eigenschaften justify-content und align-items kannst du ein untergeordnetes Element unabhängig von der Größe des untergeordneten oder übergeordneten Elements ganz einfach innerhalb seines Flex-Containers zentrieren. 

So erreichst du mit Flexbox die perfekte Zentrierung:

.container {
    display: flex; /* Wandle das Elternelement in einen Flex-Container um */
    justify-content: center; /* Zentriere das Kindelement horizontal entlang der Hauptachse */
    align-items: center; /* Zentriere das Kindelement vertikal entlang der Querachse */
}

Damit diese Technik effektiv funktioniert, stelle sicher, dass der Flex-Container eine festgelegte Höhe hat. Wenn die Höhe des Containers nicht explizit festgelegt ist, ist er nur so hoch wie sein Inhalt, und die vertikale Zentrierung ist möglicherweise nicht erkennbar.

Hier ist ein Beispiel dafür, wie du diese Technik in HTML verwendest:

<div class="container">
    <div class="child">This is centered</div>
</div>
.container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 300px; /* Lege eine bestimmte Höhe für den Container fest */
    border: 1px solid black; /* Optional: Füge zur Veranschaulichung einen Rahmen hinzu */
}

.child {
    padding: 20px;
    border: 1px solid red;
}

In diesem Beispiel hat das Element .container eine Höhe von 300px, und das Element .child wird darin sowohl horizontal als auch vertikal genau zentriert.

challenge icon

Aufgabe

Einfach

Du erhältst ein HTML-Dokument mit einem übergeordneten Bereich (<div>), der einen untergeordneten Bereich (<div>) enthält. Deine Aufgabe ist es, Flexbox zu verwenden, um den untergeordneten Bereich exakt innerhalb des übergeordneten Bereichs zu zentrieren. Folge den folgenden Schritten:

  1. Schreibe eine CSS-Regel, die auf das <div>-Element mit der Klasse parent zielt.
  2. Setze die Eigenschaft display des Elements .parent auf flex, um es in einen Flex-Container umzuwandeln.
  3. Setze die Eigenschaft justify-content des Elements .parent auf center, um das untergeordnete Element horizontal zu zentrieren.
  4. Setze die Eigenschaft align-items des Elements .parent auf center, um das untergeordnete Element vertikal zu zentrieren.
  5. Gib dem Element .parent eine height von 200px, damit die vertikale Zentrierung sichtbar ist.

Probier es selbst

<html>
<head>
    <title>The Perfect Center</title>
    <style>
        /* Write CSS rules here */
    </style>
</head>
<body>
    <div class="parent">
        <div class="child">Center Me</div>
    </div>
</body>
</html>
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Styling mit CSS

Übe selbstständig: Web-Playground