Rumah > hujung hadapan web > tutorial css > Mengapakah Margin Atas pada Elemen Kanak-kanak Menolak Div ​​Induknya?

Mengapakah Margin Atas pada Elemen Kanak-kanak Menolak Div ​​Induknya?

DDD
Lepaskan: 2024-12-27 03:33:09
asal
1028 orang telah melayarinya

Why Does a Top Margin on a Child Element Push Down Its Parent Div?

Margin-Top Menolak Div ​​Induk Ke Bawah: Memahami dan Menyelesaikan Isu

Ramai pembangun menghadapi isu pelik apabila menggunakan margin atas pada elemen pertama yang kelihatan pada halaman: ia menyebabkan div induk ditolak ke bawah. Untuk menyelidiki punca tingkah laku ini dan menyediakan penyelesaian, mari kita analisa coretan kod yang disediakan:

div#header {
  width: 100%;
  background-color: #eee;
  position: relative;
}

div#header h1 {
  text-align: center;
  width: 375px;
  height: 50px;
  margin: 50px auto;
  font-size: 220%;
  background: url('../../images/name_logo.png') no-repeat;
}
Salin selepas log masuk

Kod ini mentakrifkan div pengepala dengan elemen h1 bersarang yang mengandungi jidar 50px. Biasanya, kami menjangkakan margin ini untuk meningkatkan ruang antara h1 dan tepi atas div pengepala. Walau bagaimanapun, ia sebaliknya menyebabkan keseluruhan div pengepala ditolak ke bawah sebanyak 50px.

Untuk memahami sebab происходит ini, kita perlu mempertimbangkan "konteks pemformatan blok". Apabila digunakan pada elemen pertama yang boleh dilihat pada halaman, jidar atas menetapkan semula konteks pemformatan blok, menyebabkan div induk ditarik ke bawah.

Penyelesaian kepada isu ini ialah menggunakan limpahan: auto pada div induk . Ini membolehkan div induk melaraskan ketinggiannya secara automatik untuk menampung elemen anak-anaknya, termasuk h1 dengan jidar atas:

div#header {
  width: 100%;
  background-color: #eee;
  position: relative;
  overflow: auto;
}
Salin selepas log masuk

Dengan menambahkan limpahan: auto, kami membenarkan div pengepala mengubah saiz secara menegak, menghalangnya daripada ditolak ke bawah apabila jidar atas ditambahkan pada elemen h1.

Atas ialah kandungan terperinci Mengapakah Margin Atas pada Elemen Kanak-kanak Menolak Div ​​Induknya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan