So erreichen Sie ein zentriertes Layout im CSS-Layout

So erreichen Sie ein zentriertes Layout im CSS-Layout

1. Legen Sie den übergeordneten Container auf eine Tabelle und den untergeordneten Container auf ein Inline-Element fest.

Geeignet für Unterinhalte zur Anzeige von Text.

<!-- css -->
<Stil>
    #Elternteil {
        Höhe: 200px;
        Breite: 200px;
        Rand: 1px durchgehend rot;

        Anzeige: Tabellenzelle; /* In eine Tabelle umwandeln */
        Textausrichtung: zentriert; /* horizontal */
        vertikale Ausrichtung: Mitte; /* vertikal */
    }
    #Kind {
        Hintergrundfarbe: blau;
        Farbe: weiß;

        Anzeige: inline; /* Kindelemente werden auf Inline oder Inline-Block gesetzt*/
    }
</Stil>

<!-- html -->
<div id="übergeordnet">
    <div id="child">Inhalt</div>
</div>

2. Legen Sie die relative Positionierung für den übergeordneten Container und die absolute Positionierung für den untergeordneten Container fest und zentrieren Sie ihn dann mithilfe der Ränder.

<!-- css -->
<Stil>
    #Elternteil {
        Höhe: 200px;
        Breite: 200px;
        Rand: 1px durchgehend rot;

        position: relative; /* Relative Positionierung festlegen */
    }
    #Kind {
        Höhe: 50px;
        Breite: 50px;
        Farbe: weiß;
        Hintergrundfarbe: blau;

        /* Absolute Positionierung, nachdem die 4 Richtungen auf 0 gesetzt wurden, wird der Rand auf Auto gesetzt */
        Position: absolut;
        links: 0;
        oben: 0;
        rechts: 0;
        unten: 0;
        Rand: automatisch;
    }
</Stil>

<!-- html -->
<div id="übergeordnet">
    <div id="Kind"></div>
</div>

3. Der übergeordnete Container wird auf eine flexible Box eingestellt und der untergeordnete Container legt die Ränder fest.

<!-- css -->
<Stil>
    #Elternteil {
        Höhe: 200px;
        Breite: 200px;
        Rand: 1px durchgehend rot;

        display: flex; /* Wandelt das übergeordnete Element in eine flexible Box um*/
        Anzeige: -webkit-flex; /* Safari */
    }
    #Kind {
        Höhe: 50px;
        Breite: 50px;
        Hintergrundfarbe: blau;

        Rand: automatisch;
    }
</Stil>

<!-- html -->
<div id="übergeordnet">
    <div id="Kind"></div>
</div>

4. Legen Sie die relative Positionierung für den übergeordneten Container, die absolute Positionierung für das untergeordnete Element und eine negative Halbbreite für den linken und oberen Rand fest.

Geeignet für Situationen, in denen Breite und Höhe des Kindes festgelegt sind.

<!-- css -->
<Stil>
    #Elternteil {
        Höhe: 200px;
        Breite: 200px;
        Rand: 1px durchgehend rot;

        position: relative; /* Relative Positionierung festlegen */
    }
    #child { /* Wenn das untergeordnete Element seine eigene Breite und Höhe kennt*/
        Hintergrundfarbe: blau;

        Breite: 50px;
        Höhe: 50px;
        Rand oben: -25px;
        Rand links: -25px;
        Position: absolut;
        links: 50%;
        oben: 50 %;
    }
</Stil>

<!-- html -->
<div id="übergeordnet">
    <div id="Kind"></div>
</div>

5. Legen Sie die relative Positionierung für den übergeordneten Container und die absolute Positionierung für den untergeordneten Container fest und verwenden Sie das Transformationsattribut, um die horizontale und vertikale Richtung auf die negative Hälfte festzulegen.

Geeignet für Situationen, in denen Breite und Größe des Kindes nicht festgelegt sind.

<!-- css -->
<Stil>
    #Elternteil {
        Höhe: 200px;
        Breite: 200px;
        Rand: 1px durchgehend rot;

        position: relative; /* Relative Positionierung festlegen */
    }
    #child { /* Das untergeordnete Element kennt seine eigene Breite und Höhe nicht. Verwenden Sie die Übersetzungsfunktion von Transform */
        Rand: 1px durchgehend blau;

        Position: absolut;
        oben: 50 %;
        links: 50%;
        -webkit-transform: übersetzen(-50 %,-50 %);
        -ms-transform: übersetzen(-50 %, -50 %);
        -o-transform: übersetzen(-50 %, -50 %);
        transformieren: übersetzen(-50 %,-50 %);
    }
</Stil>

<!-- html -->
<div id="übergeordnet">
    <div id="Kind">
        <div id="Inhalt">
            Inhalt 1
            <br/>
            Inhalt 2
        </div>
    </div>
</div>

6. Legen Sie als übergeordnetes Element eine flexible Box fest und legen Sie die Ausrichtungseigenschaften fest.

<!-- css -->
<Stil>
    #Elternteil {
        Höhe: 200px;
        Breite: 200px;
        Rand: 1px durchgehend rot;

        display: flex; /* Wandelt das übergeordnete Element in eine flexible Box um*/
        Anzeige: -webkit-flex; /* Safari */
        Inhalt ausrichten: zentriert;/* horizontal */
        align-items: center; /* vertikal */
    }
    #Kind {
        Höhe: 50px;
        Breite: 50px;
        Hintergrundfarbe: blau;
    }
</Stil>

<!-- html -->
<div id="übergeordnet">
    <div id="Kind"></div>
</div>

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

<<:  Detaillierte Erläuterung der MySQL-Benutzerrechteverwaltung

>>:  3 einfache Möglichkeiten, Karusselleffekte mit JS zu erzielen

Artikel empfehlen

Was macht die MySQL-Datenbank?

MySQL ist ein relationales Datenbankverwaltungssy...

Beispielcode zum Mischen von Float und Margin in CSS

Bei meinen letzten Studien habe ich einige Layout...

MySql 8.0.16-win64 Installations-Tutorial

1. Entpacken Sie die heruntergeladene Datei wie u...

Eine detaillierte Einführung in den Ausführungsmechanismus von JavaScript

Inhaltsverzeichnis 1. Das Konzept von Prozess und...

Der Unterschied zwischen z-index: 0 und z-index: auto in CSS

Ich habe vor Kurzem etwas über Stapelkontexte gel...

Zwei Möglichkeiten zum Exportieren von CSV in Win10 MySQL

Es gibt zwei Möglichkeiten, CSV in Win10 zu expor...

So bereinigen Sie schnell Milliarden von Daten in einer MySQL-Datenbank

Heute habe ich eine Festplattenalarm-Ausnahme erh...

Eine Fallstudie zur MySQL-Optimierung

1. Hintergrund Auf jeder OLTP-Datenbankinstanz vo...

Erste Schritte mit GDB unter Linux

Vorwort gdb ist ein sehr nützliches Debugging-Too...