CSS – فروپاشی حاشیه‌ها (Margin Collapse)

CSS Margin Collapse

گاهی اوقات، حاشیه‌های دو عنصر در CSS به یک حاشیه‌ی واحد کاهش می‌یابند. این پدیده به عنوان فروپاشی حاشیه‌ها (Margin Collapse) شناخته می‌شود.

فروپاشی حاشیه چیست؟

حاشیه‌های بالا و پایین عناصر گاهی اوقات با هم ترکیب می‌شوند و یک حاشیه‌ی واحد ایجاد می‌کنند که برابر با بزرگ‌ترین حاشیه بین آن‌ها است.

توجه کنید که این اتفاق فقط برای حاشیه‌های بالا و پایین رخ می‌دهد، نه برای حاشیه‌های چپ و راست.

مثال فروپاشی حاشیه:

h1 {
  margin: 0 0 50px 0; /* حاشیه‌ی پایین h1 برابر با 50px است */
}

h2 {
  margin: 20px 0 0 0; /* حاشیه‌ی بالای h2 برابر با 20px است */
}

در این مثال، عنصر <h1> دارای حاشیه‌ی پایینی ۵۰px و عنصر <h2> دارای حاشیه‌ی بالایی ۲۰px است. منطق عمومی نشان می‌دهد که حاشیه عمودی بین این دو عنصر باید مجموع ۷۰px باشد (۵۰px + ۲۰px). اما به دلیل فروپاشی حاشیه، حاشیه نهایی بین این دو عنصر ۵۰px خواهد بود که همان بزرگ‌ترین مقدار بین دو حاشیه است.

نکات مهم:

  • فقط حاشیه‌های عمودی (بالا و پایین) فروپاشیده می‌شوند.
  • حاشیه‌های افقی (چپ و راست) به هم فروپاشی نمی‌شوند و به همان صورت که تعریف شده‌اند باقی می‌مانند.

تمام خواص CSS مربوط به حاشیه:

  • margin: تنظیم همه حاشیه‌ها به صورت shorthand (بالا، راست، پایین، چپ).
  • margin-bottom: تنظیم حاشیه‌ی پایین یک عنصر.
  • margin-left: تنظیم حاشیه‌ی چپ یک عنصر.
  • margin-right: تنظیم حاشیه‌ی راست یک عنصر.
  • margin-top: تنظیم حاشیه‌ی بالای یک عنصر.

این خواص برای مدیریت فواصل بین عناصر بسیار کاربردی هستند و با استفاده درست از آن‌ها می‌توان طراحی صفحات را بهینه کرد.

پست های مرتبط

مطالعه این پست ها رو از دست ندین!
JavaScript - کلمه کلیدی Let (Let)

JavaScript – کلمه کلیدی Let (Let)

تعریف let کلیدواژه let در ES6 (2015) معرفی شد و دارای ویژگی‌های خاصی است که آن را از var...

بیشتر بخوانید
JavaScript - متغیرها (Variables)

JavaScript – متغیرها (Variables)

متغیرها در جاوا اسکریپت متغیرها در جاوا اسکریپت به عنوان ظرف‌هایی برای ذخیره‌سازی داده‌ها استفاده می‌شوند و می‌توانند به...

بیشتر بخوانید
JavaScript - کامنت‌ها (Comments)

JavaScript – کامنت‌ها (Comments)

کامنت‌ها در جاوا اسکریپت کامنت‌ها در جاوا اسکریپت به برنامه‌نویسان این امکان را می‌دهند تا توضیحاتی را به کد...

بیشتر بخوانید

نظرات

سوالات و نظراتتون رو با ما به اشتراک بذارید

برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید.