Rumah >hujung hadapan web >tutorial css >Bagaimanakah Tata Letak Grid CSS Boleh Mencapai Baris Ketinggian Sama Sementara Flexbox Tidak Boleh?
Dalam bidang reka letak HTML dan CSS, mencapai baris ketinggian yang sama adalah satu cabaran bersama. Secara tradisinya, ini tidak dapat dilaksanakan dengan Flexbox kerana pengiraan ketinggian berasaskan garisan, di mana setiap baris ditentukan oleh elemen tertingginya. Walau bagaimanapun, kemunculan CSS Grid Layout menawarkan penyelesaian serba boleh untuk masalah ini.
Kunci untuk mencipta ketinggian yang sama baris dalam grid adalah untuk menggunakan unit 1fr untuk sifat grid-auto-rows. Unit ini bermaksud "unit pecahan" dan mewakili panjang fleksibel dalam bekas grid.
<br>grid-auto-rows: 1fr;<br>
Dengan menetapkan sifat grid-auto-rows kepada 1fr untuk semua baris, kami mengarahkan penyemak imbas untuk mengagihkan ruang menegak yang ada sama rata di antara mereka. Ini menyebabkan semua baris mempunyai ketinggian yang sama.
Keajaiban di sebalik 1fr terletak pada keupayaannya untuk berkembang dan mengecut berdasarkan kandungan dalam sel grid. Apabila bekas mempunyai ketinggian yang tidak ditentukan, seperti yang sering berlaku dalam reka letak dinamik, trek grid (dalam kes kami, baris) diubah saiznya secara automatik untuk menampung kandungan tertinggi.
Ketinggian maksimum baris menjadi bersamaan dengan 1fr, yang kemudiannya didarab dengan nilai 1fr yang ditetapkan untuk menentukan ketinggian akhir setiap baris. Pada dasarnya, semua baris mewarisi ketinggian baris yang paling tinggi.
Tidak seperti Tata Letak Grid, Flexbox tidak menawarkan cara untuk mencipta baris ketinggian yang sama merentas berbilang baris. Mengikut spesifikasi Flexbox, saiz silang (ketinggian) setiap baris dihadkan kepada ketinggian terkecil yang diperlukan agar sesuai dengan kandungannya.
Tingkah laku ini menjadikannya mustahil untuk mencapai kesan yang diingini dengan Flexbox sahaja. Hanya Reka Letak Grid CSS menyediakan fleksibiliti dan fungsi yang diperlukan untuk baris ketinggian yang sama merentas semua baris dalam grid.
Atas ialah kandungan terperinci Bagaimanakah Tata Letak Grid CSS Boleh Mencapai Baris Ketinggian Sama Sementara Flexbox Tidak Boleh?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!