Beispielcode für CSS-Layout an beiden Enden (unter Verwendung des negativen Rands des übergeordneten Elements)

Beispielcode für CSS-Layout an beiden Enden (unter Verwendung des negativen Rands des übergeordneten Elements)

Kürzlich stieß ich während des Entwicklungsprozesses auf ein Layout, das an beiden Enden ausgerichtet war. Das Layout basierte auf Prozentsätzen. Ich hatte zuvor ein flexibles Layout verwendet, aber bei der Verwendung eines flexiblen Layouts an beiden Enden traten alle möglichen Fehler auf. Wenn beispielsweise Folgendes dynamisch generiert wird, verteilen drei oder mehr Spalten die folgende Liste auf beide Seiten.
Obwohl das Problem gelöst werden kann, möchte ich dennoch sehen, wie das Layout mit normalem CSS gestaltet wird. Weil ich das geschrieben habe.

Ich habe online einige Tutorials gefunden und in allen waren die Breiten für die Operationen fest vorgegeben. Ich habe es ins Prozentformat umgewandelt und einfach aufgezeichnet.
Erstens CSS

<Stil>
        * {
            Polsterung: 0px;
            Rand: 0px;
            Box-Größe: Rahmenbox;
        }
        
        .max-box {
            maximale Breite: 1200px;
            Rand: 0px automatisch;
        }
        
        .Kasten {
            Überlauf: versteckt;
            Breite: berechnet (100 % + 20 Pixel);
            Rand links: -10px;
        }
        
        .inner {
            Höhe: 100px;
            Rand: durchgehend 1 Pixel rot;
            schweben: links;
            Rand links: 10px;
            Breite: berechnet (((100 % – 20 Pixel) – 10 Pixel * 3)/4);
        }
        
        .max-box2 {
            maximale Breite: 1200px;
            Rand: 50px automatisch;
            Rand: durchgehend 1 Pixel rot;
            Höhe: 200px;
        }
    </Stil>

Dann weiter zu html

 <div Klasse="max-box2">

    </div>
    <div Klasse="max-box">
        <div Klasse="Box">
            <div Klasse="inner">

            </div>
            <div Klasse="inner">

            </div>
            <div Klasse="inner">

            </div>
            <div Klasse="inner">

            </div>
        </div>
    </div>

Fügen Sie diese in HTML ein und Sie können die Wirkung sehen.
Wie unten gezeigt

Bildbeschreibung hier einfügen

Fassen wir abschließend die Formel zusammen

x = 10px; d. h. der gewünschte Abstand y = 4, d. h. die gewünschte Anzahl von Zeilen Übergeordnetes Element: Breite: calc(100 % + (x * 2));
Kind: Breite: calc(((100% - (x * 2)) - x * ( y - 1)) / y );

Zusammenfassen

Dies ist das Ende dieses Artikels über CSS-Layout – Zwei-Enden-Layout (unter Verwendung des negativen Rands des übergeordneten Elements). Weitere relevante Inhalte zum negativen Rand des übergeordneten CSS-Layouts finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

<<:  Die konkrete Umsetzung des JavaScript-exklusiven Denkens

>>:  Lösung für das Problem der unvollständigen Anzeige des Inhalts der ausgewählten Dropdown-Box in HTML und der teilweisen Abdeckung

Artikel empfehlen

Detaillierte Anwendung des dynamischen Vue-Formulars

Überblick Es gibt viele Formularanforderungen im ...

Der Unterschied zwischen Hash-Modus und Verlaufsmodus im Vue-Router

vue-router hat zwei Modi Hash-Modus Verlaufsmodus...

Eine kurze Diskussion zu this.$store.state.xx.xx in Vue

Inhaltsverzeichnis Sehen Sie sich dies an.$store....

So ändern Sie Port 3389 des Remotedesktops von Windows Server 2008 R2

Die Standardportnummer des Remotedesktops des Win...

Zabbix3.4-Methode zum Überwachen des MongoDB-Datenbankstatus

Mongodb verfügt über einen Befehl db.serverStatus...

So erhalten Sie USB-Scannerdaten mit js

In diesem Artikel wird der spezifische Prozess zu...

Upgrade des Windows Server 2008R2-Dateiservers auf Windows Server 2016

Die Benutzerorganisation verfügt über zwei Window...

jQuery implementiert Warenkorbfunktion

In diesem Artikelbeispiel wird der spezifische Co...

Praktische Aufzeichnung der MySQL 5.6 Master-Slave-Fehlerberichterstattung

1. Problemsymptome Version: MySQL 5.6, unter Verw...

Beispielcode zur Implementierung eines Hintergrundunschärfeeffekts mit CSS

Ist es der unten gezeigte Effekt? Wenn ja, lesen ...

Verwenden von JavaScript in HTML

Das <script>-Tag In HTML5 hat Skript die fo...