Rumah > hujung hadapan web > tutorial css > Mengapakah `margin-top` Berfungsi dengan `inline-block` tetapi Tidak dengan `inline`?

Mengapakah `margin-top` Berfungsi dengan `inline-block` tetapi Tidak dengan `inline`?

Mary-Kate Olsen
Lepaskan: 2024-11-27 10:10:10
asal
1000 orang telah melayarinya

Why Does `margin-top` Work with `inline-block` but Not with `inline`?

Mengapa Margin-Top Berfungsi dengan Inline-Block tetapi Tidak dengan Inline

Dalam pembangunan web, memahami perbezaan antara inline dan inline-block adalah penting untuk membentuk tingkah laku elemen pada halaman. Soalan ini cuba menjelaskan percanggahan dalam aplikasi jidar atas antara dua sifat paparan ini.

Sebaris dan Sebaris-Blok

Spesifikasi CSS2 mentakrifkan sebaris sebagai nilai yang mewakili elemen sebaris. Elemen sedemikian muncul sebagai satu baris berterusan tanpa gangguan. Blok sebaris, sebaliknya, mencipta bekas blok peringkat sebaris, bermakna elemen ini berkelakuan seperti blok dalam pemformatan sebaris. Seperti yang digambarkan dalam dokumentasi CSS2:

  • Sebaris: "Nilai ini menyebabkan elemen menjana satu atau lebih kotak sebaris."
  • Blok sebaris: "Nilai ini menyebabkan elemen menjadi menjana bekas blok peringkat sebaris Bahagian dalam blok sebaris diformatkan sebagai kotak blok dan elemen itu sendiri diformatkan sebagai tahap sebaris atom. kotak."

Hormat Margin

Selain itu, spesifikasi CSS2 menggariskan penghormatan margin elemen sebaris:

"Dalam pemformatan sebaris konteks, kotak dibentangkan secara mendatar, satu demi satu, bermula di bahagian atas blok yang mengandungi Jidar mendatar, sempadan,. dan padding dihormati di antara kotak-kotak ini."

Perbezaan ini menerangkan sebab margin-top tidak berfungsi dengan elemen sebaris. Elemen sebaris dihadkan untuk menghormati jidar mendatar sahaja, manakala elemen peringkat blok seperti blok sebaris menghormati kedua-dua jidar mendatar dan menegak.

Contoh

Pertimbangkan HTML dan CSS disediakan dalam soalan:

<!DOCTYPE html>
<head>
  <link rel="stylesheet" type="text/css" href="MyFirstWebsite.css">
  <title>Max Pleaner's First Website</title>
</head>
<body>
  <h1>Welcome to my site.</h1>
</body>
</html>
Salin selepas log masuk
body {
  background-image: url('sharks.jpg');
}

h1 {
  background-color: #1C0245;
  display: inline;
  padding: 6.5px 7.6px;
  margin-left: 100px;
  margin-top: 25px;
}
Salin selepas log masuk

Dalam kes ini, elemen h1 hanya akan memaparkan jidar mendatar sebanyak 100px apabila sifat paparan ditetapkan kepada sebaris. Walau bagaimanapun, jika sifat paparan ditukar kepada blok sebaris, margin atas 25px akan digunakan, kerana elemen h1 kemudiannya dianggap sebagai elemen tahap blok dalam konteks sebaris.

Atas ialah kandungan terperinci Mengapakah `margin-top` Berfungsi dengan `inline-block` tetapi Tidak dengan `inline`?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan