⊗mkSpFxSFC 96 of 128 menu

Pengawalan Mampatan Blok Flex dalam CSS

Secara lalai, semua elemen akan dikurangkan secara berkadar dengan lebar elemen. Walau bagaimanapun, kita boleh membuat sesetengah elemen dikurangkan lebih banyak atau kurang. Untuk ini, terdapat sifat khas flex-shrink.

Sifat ini mewakili sejenis berat, yang akan didarabkan dengan lebar elemen apabila mengira jumlah yang perlu dikurangkan menggunakan formula yang telah disebut di atas. Sebagai contoh, jika lebar elemen ialah 200px, dan flex-shrink-nya ialah 3, maka lebar berwajaran (iaitu didarab dengan berat) elemen akan menjadi:

200px * 3 = 600px

Formula dengan mengambil kira flex-shrink akan kelihatan seperti berikut: ruang kosong negatif * (lebar berwajaran elemen / jumlah semua lebar berwajaran elemen).

Mari kita lihat contoh. Katakan kita mempunyai 4 elemen. Katakan lebar elemen pertama ialah 400px, dan flex-shrink-nya ialah 2, lebar elemen-elemen lain - 200px, dan flex-shrink mereka ialah 1. Katakan lebar elemen induk 900px.

Jumlah lebar semua elemen ialah:

400px + 3 * 200px = 1000px

Ruang kosong negatif akan menjadi:

1000px - 900px = 100px

Jumlah lebar berwajaran semua elemen ialah:

400px * 2 + 200px * 1 + 200px * 1 + 200px * 1 = 1400px

Lebar berwajaran elemen pertama ialah:

400px * 2 = 800px

Jumlah yang akan dikurangkan dari elemen pertama ialah:

100px * (800px / 1400px) = 100px * 0.57 = 57.14px

Lebar elemen akan menjadi:

400px - 57.14px = 342.86px ~ 343px

Lebar berwajaran setiap elemen lain ialah:

200px * 1 = 200px

Jumlah yang akan dikurangkan dari setiap elemen ialah:

100px * (200px / 1400px) = 100px * 0.142 = 14.2px

Lebar elemen akan menjadi:

200px - 14.2px = 185.8px ~ 186px

Laksanakan blok yang diterangkan dan sahkan dengan pengukuran, bahawa lebar elemen memang sama dengan yang kita kira.

Kira lebar blok, kemudian sahkan pengiraan dengan pengukuran:

<div class="parent"> <div class="child elem1">1</div> <div class="child elem2">2</div> <div class="child elem3">3</div> </div> .parent { display: flex; width: 200px; height: 200px; border: 1px solid red; } .child { height: 50px; border: 1px solid green; } .elem1 { width: 100px; flex-shrink: 2; } .elem2 { width: 100px; flex-shrink: 1; } .elem3 { width: 100px; flex-shrink: 1; }

Kira lebar blok, kemudian sahkan pengiraan dengan pengukuran:

<div class="parent"> <div class="child elem1">1</div> <div class="child elem2">2</div> <div class="child elem3">3</div> </div> .parent { display: flex; width: 200px; height: 200px; border: 1px solid red; } .child { height: 50px; border: 1px solid green; } .elem1 { width: 100px; flex-shrink: 3; } .elem2 { width: 100px; flex-shrink: 2; } .elem3 { width: 100px; flex-shrink: 1; }

Kira lebar blok, kemudian sahkan pengiraan dengan pengukuran:

<div class="parent"> <div class="child elem1">1</div> <div class="child elem2">2</div> <div class="child elem3">3</div> <div class="child elem4">4</div> </div> .parent { display: flex; width: 500px; height: 200px; border: 1px solid red; } .child { height: 50px; border: 1px solid green; } .elem1 { width: 300px; flex-shrink: 3; } .elem2 { width: 200px; flex-shrink: 2; } .elem3 { width: 200px; flex-shrink: 1; } .elem4 { width: 200px; flex-shrink: 1; }
Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak