Bagaimana untuk menyelaraskan tiga div (kiri/tengah/kanan) dalam satu div?
P粉092778585
2023-08-21 15:09:18
<p>Saya mahu menjajarkan 3 div di dalam div bekas, seperti ini: </p>
<pre class="brush:php;toolbar:false;">[[KIRI] [PUSAT] [KANAN]]</pre>
<p>Lebar div bekas ialah 100% (tiada lebar ditetapkan), dan div tengah harus kekal di tengah selepas mengubah saiz bekas. </p>
<p>Jadi saya tetapkan: </p>
<pre class="lang-css prettyprint-override"><kod>#container{width:100%;}
#left{float:left;width:100px;}
#right{float:right;width:100px;}
#center{margin:0 auto;width:100px;}
</code></pre>
<p>Tetapi hasilnya menjadi: </p>
<pre class="brush:php;toolbar:false;">[[KIRI] [PUSAT] ]
[KANAN]</pre>
<p>Sebarang cadangan? </p>
Jajarkan tiga div secara mendatar menggunakan Flexbox
Ini ialah cara CSS3 untuk menjajarkan div secara mendatar dalam div lain.
jsFiddle
Atributjustify-content mempunyai lima nilai:
Dalam semua kes, tiga div berada pada baris yang sama. Untuk penerangan bagi setiap nilai, lihat: https://stackoverflow.com/a/33856609/3597276
Kebaikan flexbox:
Ketahui lebih lanjut tentang flexbox:
Sokongan Pelayar: Flexbox disokong oleh semua pelayar utama, kecuali IE < 10. Beberapa versi penyemak imbas terbaharu, seperti Safari 8 dan IE10, memerlukan awalan vendor. Untuk menambah awalan dengan cepat, gunakan Autoprefixer. Lihat jawapan ini untuk butiran lanjut.
Menggunakan CSS ini, letakkan div anda seperti berikut (terapung dahulu):
PS: Anda juga boleh terapung kanan dahulu, kemudian kiri, kemudian tengah. Adalah penting bahawa kandungan terapung datang sebelum bahagian tengah "utama".
Nota: Biasanya anda akan mahu meletakkannya pada ketinggian
#container
中的最后加入这段代码:<div style="clear:both;"></div>
,它会使#container
的高度垂直延伸,以容纳两侧的浮动内容,而不仅仅是从#center
untuk mengelakkan kandungan di kedua-dua belah daripada melimpah ke bahagian bawah.