Rumah  >  Artikel  >  hujung hadapan web  >  Mengapa Peratusan Teratas Margin Dikira Berdasarkan Lebar Bekas dalam CSS?

Mengapa Peratusan Teratas Margin Dikira Berdasarkan Lebar Bekas dalam CSS?

Susan Sarandon
Susan Sarandonasal
2024-11-01 14:58:02113semak imbas

Why is Margin-Top Percentage Calculated Based on Container Width in CSS?

Pengiraan Peratusan Atas Margin dalam CSS

Apabila menggunakan peratusan atas margin pada elemen, adalah penting untuk memahami cara pengiraan dilakukan. Bertentangan dengan kepercayaan popular, peratusan atas margin ditentukan berdasarkan lebar blok yang mengandungi, bukan ketinggiannya.

Spesifikasi W3C Dijelaskan:

Mengikut Spesifikasi W3C, "Peratusan dikira berkenaan dengan lebar blok yang mengandungi kotak yang dihasilkan." Peraturan ini terpakai pada kedua-dua 'margin-top' dan 'margin-bottom'.

Sebab untuk Mengasaskan Jidar Menegak pada Lebar Bekas:

  1. Ketekalan Mendatar dan Menegak: Peratusan margin untuk keempat-empat sisi blok hendaklah kekal sama, seperti yang ditakrifkan oleh sifat trengkas 'margin'. Mengasaskan jidar menegak pada lebar kontena mengekalkan saiz jidar yang konsisten.
  2. Mengelakkan Kebergantungan Pekeliling: Pengiraan ketinggian blok selalunya bergantung pada pemahaman jidar atas dan bawah. Walau bagaimanapun, jika jidar ini bergantung pada ketinggian blok, kebergantungan bulat akan timbul semasa pengiraan susun atur. Mengasaskan jidar menegak pada lebar kontena menyelesaikan isu ini.

Contoh:

Pertimbangkan kod berikut:

<code class="css">.container {
  width: 500px;
  height: 100px;
}

p {
  margin-top: 50%;
}</code>

Margin -atas' sebanyak 50% untuk elemen 'p' akan dikira berdasarkan lebar '.container', iaitu 500px. Oleh itu, margin atas sebenar yang digunakan ialah 250px (50% daripada 500px). Ini berbeza daripada andaian biasa bahawa ia akan menjadi 100px (50% daripada 200px, ketinggian '.container').

Kesimpulan:

Dengan memahami bagaimana margin -peratusan teratas dikira, anda boleh mengawal kedudukan elemen dengan berkesan dan mengelakkan isu susun atur yang tidak dijangka. Ingat bahawa jidar menegak adalah berdasarkan lebar blok yang mengandungi untuk mengekalkan saiz yang konsisten dan mengelakkan kebergantungan bulat dalam reka letak CSS.

Atas ialah kandungan terperinci Mengapa Peratusan Teratas Margin Dikira Berdasarkan Lebar Bekas dalam CSS?. 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