Dieser Artikel dient lediglich dazu, Sie mit der Verwendung grundlegender Attribute vertraut zu machen und die Herstellung jeder Seite eines Würfelsatzes abzuschließen. Im folgenden Inhalt werde ich einige der schwierigeren Probleme mit Flexbox nicht behandeln, wie z. B. die Syntax alter Versionen, Herstellerpräfixe, Browser-Macken usw.:
1. Wir wissen, dass die Würfel haben sechs Seiten, die Anzahl der Punkte in jeder Seite stellt den Wert der Seite dar und die erste Seite besteht aus einem horizontal und vertikal zentrierten Punkt. Schauen wir uns die spezifische Implementierung an:
<section name="01" class="face-01"> <span class="dot"></span> </section> face-01 { display: flex; justify-content: center; align-items: center;
.face-02 { display: flex; justify-content: space-between; } .face-02 .dot:nth-of-type(2) { align-self: flex-end; } <section name="02" class="face-02"> <span class="dot"></span> <span class="dot"></span> </section>
.face-03 { display: flex; justify-content: space-between; } .face-03 .dot:nth-of-type(2) { align-self: center; } .face-03 .dot:nth-of-type(3) { align-self: flex-end; } <section name="03" class="face-03"> <span class="dot"></span> <span class="dot"></span> <span class="dot"></span> </section>
.face-04 { display: flex; justify-content: space-between; flex-direction: column; } .face-04 .column { display: flex; justify-content: space-between; } <section name="04" class="face-04"> <div class="column"> <span class="dot"></span> <span class="dot"></span> </div> <div class="column"> <span class="dot"></span> <span class="dot"></span> </div> </section>
.row { display: flex; box-sizing: border-box; } .column { margin: 10px; flex-grow: 1; flex-shrink: 1; flex-basis: 0; box-sizing: border-box; } <section class="row"> <div class="column">One</div> </section> <section class="row"> <div class="column">One Half</div> <div class="column">One Half</div> </section> <section class="row"> <div class="column">One Third</div> <div class="column">One Third</div> <div class="column">One Third</div> </section> <section class="row"> <div class="column">One Fourth</div> <div class="column">One Fourth</div> <div class="column">One Fourth</div> <div class="column">One Fourth</div> </section> <section class="row"> <div class="column">One Sixth</div> <div class="column">One Sixth</div> <div class="column">One Sixth</div> <div class="column">One Sixth</div> <div class="column">One Sixth</div> <div class="column">One Sixth</div> </section> <section class="row"> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> <div class="column">One Twelve</div> </section>
1. Flex-Grow: Wird verwendet, um die Erweiterungsmöglichkeiten von Flex-Elementen nach Bedarf zu definieren. Es akzeptiert einen Wert ohne Einheiten als Verhältnis. Es wird hauptsächlich verwendet, um zu bestimmen, wie viel Platz proportional zum verbleibenden Platz des skalierbaren Containers erweitert werden soll.
Wenn „Flex-Grow“ aller Flex-Elemente auf „1“ gesetzt ist, wird für jedes Flex-Element ein gleich großer verbleibender Platz festgelegt. Wenn Sie den „flex-grow“-Wert für eines der Flex-Elemente auf „2“ setzen, ist der verbleibende Platz, der von diesem Flex-Element belegt wird, doppelt so groß wie der verbleibende Platz, der von den anderen Flex-Elementen belegt wird. Negative Werte sind ungültig.
2. Flex-Shrink: Wird verwendet, um die Fähigkeit zu definieren, Flex-Elemente nach Bedarf zu verkleinern. Auch negative Werte sind ungültig.
3. Flex-Basis: Wird verwendet, um den Skalierungsgrundwert festzulegen. Negative Werte werden nicht unterstützt. Bei der Einstellung 0 wird zusätzlicher Platz um den Inhalt herum nicht berücksichtigt. Bei der Einstellung „Auto“ wird zusätzlicher Speicherplatz basierend auf dem Flex-Grow-Wert zugewiesen.
.row237 .column:first-of-type { flex-grow: 2; flex-basis: 5px; } .row237 .column:nth-of-type(2) { flex-grow: 3; flex-basis: 18px; } .row237 .column:nth-of-type(3) { flex-grow: 7; flex-basis: 70.5px; } <section class="row row237"> <div class="column">One Half</div> <div class="column">One Third</div> <div class="column">One Seventh</div> </section>