cari
Rumahhujung hadapan webtutorial cssMencapai penjajaran menegak (terima kasih, subgrid!)

Mencapai penjajaran menegak (terima kasih, subgrid!)

Alat reka bentuk web moden telah meningkatkan keupayaan penjajaran menegak dengan ketara. Susun atur laman web awal, selalunya 960px lebar, sangat bergantung pada penjajaran mendatar menggunakan grid 12 lajur. Kemunculan pertanyaan media, sambil menyelesaikan banyak masalah, memperkenalkan cabaran baru, terutama mengenai penjajaran ketika unsur -unsur reflow atau reposisi.

Pertimbangkan senario biasa: "bar" yang mengandungi kumpulan butang, masing -masing dalam a<fieldset></fieldset> dengan a<legend></legend> . Pada skrin yang lebih besar, penjajaran adalah mudah. Pendekatan CSS yang mudah, menggunakan terapung, mengendalikan ini dan menyediakan tingkah laku responsif pada titik putus yang lebih kecil:

 . Aksesibiliti-alat Fieldset {
  lebar: 48%;
  Terapung: Kiri;
  margin-kanan: 1%;
}

/ * Mudah alih */
@media sahaja skrin dan (maksimum lebar: 480px) {
  . Aksesibiliti-alat Fieldset {
    Lebar: 100%;
  }
}

Walau bagaimanapun, pada skrin yang lebih kecil, misalignment menegak menjadi jelas. Walaupun lebar tetap, penyelesaian CSS berasaskan piksel menggunakan pertanyaan media boleh memaksa penjajaran, pendekatan ini tidak mempunyai fleksibiliti dan bergantung pada "nombor sihir" yang terikat dengan kandungan tertentu:

 / * Mudah alih */
@media sahaja skrin dan (maksimum lebar: 480px) {
  legenda {
    lebar: 160px;
  }
  butang {
    lebar: 130px;
  }
}

Ketidakhadiran ini, ditambah pula dengan pergantungan pada pertanyaan media (yang saya berhasrat untuk meminimumkan), memerlukan penyelesaian yang lebih mudah disesuaikan. Penyelesaian yang ideal harus membolehkan butang dan label untuk bertindak balas:

  1. Ruang yang ada
  2. Dimensi Kandungan
  3. Unsur -unsur sekitar

Pertanyaan media jatuh pendek kerana mereka tidak menganggap ruang sekitarnya, seperti yang digambarkan dalam "The Flexbox Holy Albatross" Heydon Pickering. Tingkah laku yang diingini adalah untuk yang kedua<fieldset></fieldset> Untuk membungkus hanya apabila kedua -dua medan tidak lagi sesuai dengan satu baris.

Flexbox dan Grid: Percubaan Awal

Flexbox, dengan flex-wrap: wrap , menawarkan fleksibiliti yang lebih baik, membolehkan unsur-unsur mengalir ke pelbagai baris. Walau bagaimanapun, min-width masih sering diperlukan untuk penjajaran menegak yang sempurna.

Grid CSS, yang direka untuk pengurusan susun atur, menyediakan kata kunci auto-fit dan auto-fill (dalam repeat() ) untuk susun atur berbilang talian tanpa pertanyaan media. Menggunakan auto-fit , kami mencapai:

 .Wrapper-Toolbility-Tools {
  paparan: grid;
  grid-template-lajur: ulangi (auto-fit, 450px);
  Grid-Gap: 10px;
}

Walau bagaimanapun, nilai lebar mutlak mungkin masih diperlukan untuk penjajaran optimum. Trek grid fleksibel menggunakan unit fr atau minmax() menawarkan penambahbaikan selanjutnya, tetapi batasan timbul kerana hanya kanak -kanak langsung dari bekas grid dianggap item grid.

Penyelesaian subgrid

Tahap Grid CSS 2 memperkenalkan subgrid , membolehkan grid bersarang mewarisi saiz trek dari ibu bapa mereka. Ini menyelesaikan masalah grid bersarang bebas. Subgrid membolehkan unsur -unsur dalam grid kanak -kanak untuk bertindak balas terhadap kandungan dalam grid saudara.

Untuk contoh butang kami, grid induk ditakrifkan menggunakan auto-fill dan minmax() :

 .Wrapper-Toolbility-Tools {
  paparan: grid;
  Grid-template-lajur: ulangi (auto-fill, Minmax (150px, 1FR));
  Grid-Gap: 10px;
}

Grid Kanak -kanak Gunakan subgrid untuk mewarisi trek lajur ibu bapa:

 .sub-grid {
  paparan: grid;
  grid-lajur: span 3;
  Grid-template-lajur: subgrid;
  Align-item: pusat;
}

Ini memastikan penjajaran yang konsisten dan tingkah laku responsif. Butang dan label menyesuaikan diri dengan ruang yang ada, membungkus baris baru hanya apabila perlu.

Keserasian penyemak imbas dan bacaan selanjutnya

Sokongan penyemak imbas subgrid kini terhad (terutamanya Firefox). Pertanyaan Ciri CSS boleh memberikan sandaran untuk pelayar lain. Untuk maklumat keserasian penyemak imbas terperinci, rujuk Caniuse.com. Bacaan lanjut mengenai topik ini termasuk artikel oleh Miriam Suzanne, Rachel Andrew, dan Heydon Pickering (pautan yang disediakan dalam artikel asal). Pembungkus di sekitar ladang mungkin diperlukan untuk mengendalikan bug yang melibatkan elemen bentuk, grid, dan flexbox. Harta display FieldSet boleh ditetapkan kepada contents untuk menangani ini.

Atas ialah kandungan terperinci Mencapai penjajaran menegak (terima kasih, subgrid!). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Gaya CSS peringkat seterusnya untuk kursorGaya CSS peringkat seterusnya untuk kursorApr 23, 2025 am 11:04 AM

Kursor adat dengan CSS adalah hebat, tetapi kita boleh mengambil sesuatu ke peringkat seterusnya dengan JavaScript. Menggunakan JavaScript, kita boleh beralih antara negeri kursor, letakkan teks dinamik dalam kursor, gunakan animasi kompleks, dan gunakan penapis.

Dunia bertembung: Pengesanan Perlanggaran Kerangka Key menggunakan pertanyaan gayaDunia bertembung: Pengesanan Perlanggaran Kerangka Key menggunakan pertanyaan gayaApr 23, 2025 am 10:42 AM

Animasi CSS interaktif dengan unsur -unsur yang menghilangkan satu sama lain kelihatan lebih masuk akal pada tahun 2025. Walaupun tidak perlu untuk melaksanakan pong dalam CSS, peningkatan fleksibiliti dan kuasa CSS mengukuhkan kecurigaan Lee '

Menggunakan penapis latar belakang CSS untuk kesan UIMenggunakan penapis latar belakang CSS untuk kesan UIApr 23, 2025 am 10:20 AM

Petua dan cara untuk menggunakan harta penapis latar belakang CSS ke antara muka pengguna gaya. Anda akan belajar bagaimana untuk meletakkan penapis latar belakang di antara pelbagai elemen, dan mengintegrasikannya dengan kesan grafik CSS yang lain untuk membuat reka bentuk yang rumit.

SMIL ON?SMIL ON?Apr 23, 2025 am 09:57 AM

Nah, ternyata ciri-ciri animasi terbina dalam SVG ' s tidak pernah ditamatkan seperti yang dirancang. Pasti, CSS dan JavaScript lebih mampu membawa beban, tetapi ia baik untuk mengetahui bahawa SMIL tidak mati di dalam air seperti sebelumnya

'Cantik' berada di mata penonton'Cantik' berada di mata penontonApr 23, 2025 am 09:40 AM

Yay, let ' s melompat untuk teks-wrap: Pretty Landing dalam Pratonton Teknologi Safari! Tetapi berhati -hatilah bahawa ia ' s berbeza dari bagaimana ia berfungsi dalam pelayar kromium.

CSS-Tricks Chronicles XLIIICSS-Tricks Chronicles XLIIIApr 23, 2025 am 09:35 AM

Kemas kini trik CSS ini menyoroti kemajuan yang ketara dalam almanak, penampilan podcast baru-baru ini, panduan kaunter CSS baru, dan penambahan beberapa penulis baru yang menyumbang kandungan berharga.

Ciri tailwind ' s @ply lebih baik daripada bunyiCiri tailwind ' s @ply lebih baik daripada bunyiApr 23, 2025 am 09:23 AM

Kebanyakan masa, orang mempamerkan ciri-ciri Tailwind ' Apabila dipamerkan dengan cara ini, @apply tidak menjanjikan sama sekali. Jadi obvio

Rasa seperti saya tidak mempunyai pelepasan: perjalanan ke arah penyebaran yang warasRasa seperti saya tidak mempunyai pelepasan: perjalanan ke arah penyebaran yang warasApr 23, 2025 am 09:19 AM

Menggunakan seperti idiot datang ke ketidakcocokan antara alat yang anda gunakan untuk menggunakan dan ganjaran dalam kerumitan dikurangkan berbanding kerumitan yang ditambah.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),