Jadual Kandungan
Jawapan terperinci
Jawapan yang lebih terperinci
Jawapan terakhir
Contoh lain
Rumah hujung hadapan web tutorial css Membuat lebar dan item fleksibel bermain bagus bersama

Membuat lebar dan item fleksibel bermain bagus bersama

Apr 19, 2025 am 11:23 AM

Membuat lebar dan item fleksibel bermain bagus bersama

Jawapan ringkas: flex-shrink dan flex-basis sifat kemungkinan besar penyelesaian yang anda cari.

Jawapan terperinci

Katakan anda mahu imej dan teks disusun bersebelahan seperti ini:

Sekarang, katakan anda menggunakan Flexbox untuk mencapai matlamat ini. Menetapkan elemen induk untuk display: flex; adalah permulaan yang baik.

 <code>.container { display: flex; }</code>
Salin selepas log masuk

Keluarkan ……

Alamak! Ok, saya fikir ini boleh diterima. Adalah masuk akal bahawa imej itu dekat dengan teks, kerana kita tidak menetapkan lebar imej. Idealnya, kami mahu imej mempunyai lebar tetap, dan teks kemudian mengambil ruang yang tinggal.

Ok, mari kita buat!

 <code>.container { display: flex; } img { width: 50px; margin-right: 20px; }</code>
Salin selepas log masuk

Ini kelihatan hebat dalam krom. Tetapi tunggu, apa? Jika kita menyemak tag imej di Firefox Devtools, kita akan mendapati bahawa ia bukan nilai lebar yang kita tetapkan sama sekali:

Kita boleh menggunakan min-width untuk memaksa imej untuk mencapai lebar 50px yang kita mahukan:

 <code>img { min-width: 50px; margin-right: 20px; }</code>
Salin selepas log masuk
Salin selepas log masuk

Walau bagaimanapun, ini hanya akan membantu menetapkan lebar, jadi kita perlu menambah margin juga.

 <code>img { min-width: 50px; margin-right: 20px; }</code>
Salin selepas log masuk
Salin selepas log masuk

Itu sahaja. Lebih baik di Firefox, dan masih berfungsi di Chrome.

Jawapan yang lebih terperinci

Saya menyedari bahawa imej itu dimampatkan kerana kita perlu menggunakan harta flex-shrink untuk memberitahu item flex untuk tidak mengurangkan saiz, tanpa mengira sama ada mereka mempunyai lebar atau tidak.

Nilai flex-shrink semua projek flex adalah 1. Kita perlu menetapkan elemen imej kepada 0:

 <code>.container { display: flex; } img { width: 50px; margin-right: 20px; flex-shrink: 0; }</code>
Salin selepas log masuk

Lebih baik dan lebih baik! Tetapi kita masih boleh membuat lebih banyak penambahbaikan.

Jawapan terakhir

Kita boleh menyusunnya lebih jauh kerana flex-shrink dimasukkan ke dalam harta singkatan flex .

 <code>flex: none | [ ? || ]</code>
Salin selepas log masuk

Jika kita menetapkan nilai flex-shrink kepada 0 dan menetapkan nilai flex-basis ke lebar lalai yang kita mahu imej itu, maka kita boleh menyingkirkan atribut width sepenuhnya.

 <code>.container { display: flex; } img { flex: 0 0 50px; margin-right: 20px; }</code>
Salin selepas log masuk

Oh, ya:

Contoh lain

Harta flex-shrink menyelesaikan banyak masalah lain, dan sangat penting jika anda ingin mula menggunakan Flexbox. Berikut adalah satu lagi contoh mengapa: Saya tersandung pada soalan lain yang serupa dengan perkara di atas, yang saya sebutkan dalam buletin baru -baru ini. Saya membina komponen navigasi yang membolehkan pengguna menatal pelbagai projek kiri dan kanan. Semasa memeriksa kerja saya, saya melihat isu -isu berikut:

Item navigasi yang lebih lama tidak boleh membungkus seperti itu - tetapi akhirnya saya mendapat mengapa ini berlaku, terima kasih kepada soalan -soalan sebelumnya. Jika anda menetapkan harta flex-shrink kepada 0, ia akan memberitahu setiap item dalam navigasi ini untuk tidak mengecut, tetapi untuk mengambil lebar kandungan, seperti berikut:

Ya, kita boleh mengambil langkah tambahan sekali lagi untuk menggunakan atribut flex , kali ini menggunakan auto sebagai flex-basis kerana kita ingin mempertimbangkan sebanyak mungkin ruang untuk semua item apabila memperuntukkan ruang dalam bekas navigasi.

Long Live! Kami menyelesaikannya. Walaupun jawapannya hanyalah garis kod, adalah penting untuk mewujudkan unsur -unsur yang benar -benar fleksibel.

Atas ialah kandungan terperinci Membuat lebar dan item fleksibel bermain bagus bersama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

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

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Vue 3 Vue 3 Apr 02, 2025 pm 06:32 PM

Ia &#039; s! Tahniah kepada pasukan Vue untuk menyelesaikannya, saya tahu ia adalah usaha besar dan lama datang. Semua dokumen baru juga.

Bolehkah anda mendapatkan nilai harta CSS yang sah dari penyemak imbas? Bolehkah anda mendapatkan nilai harta CSS yang sah dari penyemak imbas? Apr 02, 2025 pm 06:17 PM

Saya mempunyai seseorang yang menulis dengan soalan yang sangat legit ini. Lea hanya blog tentang bagaimana anda boleh mendapatkan sifat CSS yang sah dari penyemak imbas. That &#039; s seperti ini.

Kad yang disusun dengan kedudukan melekit dan sasaran sass Kad yang disusun dengan kedudukan melekit dan sasaran sass Apr 03, 2025 am 10:30 AM

Pada hari yang lain, saya melihat sedikit ini sangat indah dari laman web Corey Ginnivan di mana koleksi kad timbunan di atas satu sama lain semasa anda menatal.

Sedikit di CI/CD Sedikit di CI/CD Apr 02, 2025 pm 06:21 PM

Saya &#039;

Membandingkan penyemak imbas untuk reka bentuk responsif Membandingkan penyemak imbas untuk reka bentuk responsif Apr 02, 2025 pm 06:25 PM

Terdapat beberapa aplikasi desktop ini di mana matlamat menunjukkan laman web anda pada dimensi yang berbeza pada masa yang sama. Oleh itu, anda boleh menulis

Menggunakan Markdown dan Penyetempatan di Editor Blok WordPress Menggunakan Markdown dan Penyetempatan di Editor Blok WordPress Apr 02, 2025 am 04:27 AM

Jika kita perlu menunjukkan dokumentasi kepada pengguna secara langsung dalam editor WordPress, apakah cara terbaik untuk melakukannya?

Kenapa kawasan -kawasan yang dikurangkan ungu di susun atur flex tersilap dianggap sebagai 'ruang limpahan'? Kenapa kawasan -kawasan yang dikurangkan ungu di susun atur flex tersilap dianggap sebagai 'ruang limpahan'? Apr 05, 2025 pm 05:51 PM

Soalan mengenai kawasan slash ungu dalam susun atur flex Apabila menggunakan susun atur flex, anda mungkin menghadapi beberapa fenomena yang mengelirukan, seperti dalam alat pemaju (D ...

Bagaimana untuk memilih elemen kanak -kanak dengan item nama kelas pertama melalui CSS? Bagaimana untuk memilih elemen kanak -kanak dengan item nama kelas pertama melalui CSS? Apr 05, 2025 pm 11:24 PM

Apabila bilangan elemen tidak ditetapkan, bagaimana untuk memilih elemen anak pertama nama kelas yang ditentukan melalui CSS. Semasa memproses struktur HTML, anda sering menghadapi unsur yang berbeza ...

See all articles