Rumah >hujung hadapan web >tutorial css >Bagaimanakah Saya Boleh Mencapai Peralihan Susun Atur Bendalir Tanpa Menggunakan Pertanyaan Media?
Peralihan Reka Letak Cecair tanpa Pertanyaan Media: Panduan Komprehensif
Apabila mereka bentuk tapak web, mencapai peralihan yang lancar antara reka letak desktop dan mudah alih tanpa perlu kepada pertanyaan media boleh menjadi tugas yang mencabar. Panduan ini akan menyelidiki teknik yang memanfaatkan CSS moden, khususnya clamp(), grid, minmax(), dan flexbox, untuk mencapai reka letak bendalir yang menyesuaikan diri dengan pelbagai saiz skrin.
Pertimbangkan tapak web dengan reka letak tiga lajur pada desktop dan susun atur satu lajur pada mudah alih. Untuk mencapai peralihan ini, kami akan menumpukan pada susun atur grid tertentu berdasarkan lajur ulangan. Pada desktop, kami boleh membuat reka letak tiga lajur dengan mudah menggunakan grid-template-columns: repeat(3, 33%). Walau bagaimanapun, semasa kami beralih kepada saiz skrin yang lebih kecil, kami menghadapi masalah apabila reka letak beralih kepada dua lajur sebelum runtuh kepada satu lajur.
Walaupun pertanyaan media menawarkan penyelesaian yang mudah, kami mencari pendekatan yang bergantung sepenuhnya pada sifat CSS moden. Untuk mencapai matlamat ini, kami menggunakan fungsi clamp() dalam kombinasi dengan grid-template-columns: repeat(clamp(1, calc(100% - 500px), 3), 33%). Fungsi clamp() membolehkan kita menentukan nilai minimum, nilai pilihan dan nilai maksimum. Dalam kes ini, kami menetapkan nilai minimum kepada 1 lajur, nilai pilihan untuk mengulang(3) lajur dan nilai maksimum kepada 100% - 500px.
Apabila saiz skrin berkurangan, calc(100 % - 500px) ungkapan akan menghampiri 0, menyebabkan fungsi clamp() mengeluarkan nilai yang hampir kepada 1. Ini seterusnya mengurangkan bilangan lajur kepada 1, menjadikan reka letak satu lajur dengan berkesan.
Satu lagi penyelesaian berdaya maju melibatkan penggunaan flexbox dan max(0px, (400px - 100vw)*1000) dalam sifat flex-basis. Formula ini membolehkan kami mentakrifkan asas-flex yang akan menjadi 0px apabila port pandang lebih lebar daripada 400px (dengan andaian 400px ialah titik putus yang diingini). Untuk lebar port pandangan yang lebih kecil daripada 400px, asas fleksibel akan mengambil nilai yang besar, dengan berkesan membalut elemen ke dalam reka letak satu lajur.
Dengan memanfaatkan teknik ini, kami boleh mencipta reka letak bendalir yang beralih dengan lancar antara berbilang lajur dan satu lajur, memberikan pengalaman pengguna yang responsif tanpa memerlukan pertanyaan media.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencapai Peralihan Susun Atur Bendalir Tanpa Menggunakan Pertanyaan Media?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!