Soalan:
Mengapa peratusan untuk margin dan padding dalam CSS dikira terhadap lebar blok yang mengandungi dan bukannya lebarnya ketinggian?
Jawapan:
Walaupun tiada dokumentasi rasmi yang menerangkan sebab yang tepat, penjelasan yang munasabah terletak pada potensi pergantungan rekursif dalam model kotak CSS semasa mengira ketinggian dengan peratusan.
Bayangkan elemen dengan padding-top atau padding-bottom ditetapkan kepada 10% daripada ketinggian ibu bapanya. Pelapik ini akan mempengaruhi ketinggian ibu bapa, yang seterusnya bergantung kepada ketinggian elemen anak. Ini menghasilkan gelung yang boleh mengakibatkan sama ada pengiraan ketinggian tidak tepat atau gelung tak terhingga.
Untuk mengelakkan pergantungan bulat ini, spesifikasi CSS menentukan bahawa peratusan margin dan padding dikira terhadap lebar blok yang mengandungi, dengan itu memecahkan kitaran dan memastikan pengiraan susun atur yang konsisten.
Atas ialah kandungan terperinci Mengapa Peratusan Margin dan Padding CSS Relatif Lebar, Bukan Relatif Tinggi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!