"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > لماذا يتم حساب النسبة المئوية للهامش الأعلى بناءً على عرض الحاوية في CSS؟

لماذا يتم حساب النسبة المئوية للهامش الأعلى بناءً على عرض الحاوية في CSS؟

تم النشر بتاريخ 2024-11-05
تصفح:577

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

حساب النسبة المئوية لأعلى الهامش في CSS

عند تطبيق نسبة أعلى الهامش على عنصر ما، من الضروري فهم كيفية الحساب إجراء. خلافًا للاعتقاد السائد، يتم تحديد النسبة المئوية لأعلى الهامش بناءً على عرض الكتلة التي تحتوي عليها، وليس ارتفاعها.

شرح مواصفات W3C:

وفقًا لـ مواصفات W3C، "يتم حساب النسبة المئوية فيما يتعلق بعرض الكتلة التي تحتوي على الصندوق الذي تم إنشاؤه." تنطبق هذه القاعدة على كل من "الهامش العلوي" و"الهامش السفلي".

أسباب تأسيس الهوامش الرأسية على عرض الحاوية:

  1. الاتساق الأفقي والرأسي: يجب أن تظل الهوامش المئوية لجميع الجوانب الأربعة للكتلة متساوية، كما هو محدد بواسطة خاصية الاختصار "الهامش". يؤدي تحديد الهوامش الرأسية على عرض الحاوية إلى الحفاظ على حجم هامش ثابت.
  2. تجنب التبعية الدائرية: غالبًا ما يعتمد حساب ارتفاع الكتلة على فهم الهوامش العلوية والسفلية. ومع ذلك، إذا كانت هذه الهوامش تعتمد على ارتفاع الكتلة، فستنشأ تبعية دائرية أثناء حساب التخطيط. يؤدي إنشاء الهوامش الرأسية على عرض الحاوية إلى حل هذه المشكلة.

مثال:

ضع في اعتبارك الكود التالي:

.container {
  width: 500px;
  height: 100px;
}

p {
  margin-top: 50%;
}
سيتم حساب "الهامش العلوي" بنسبة 50% للعنصر "p" بناءً على عرض ".container"، وهو 500 بكسل. ولذلك، فإن الهامش العلوي الفعلي المطبق سيكون 250 بكسل (50% من 500 بكسل). وهذا يختلف عن الافتراض الشائع بأنه سيكون 100 بكسل (50% من 200 بكسل، ارتفاع ".container").

الاستنتاج:

من خلال فهم كيفية الهامش -يتم حساب النسب المئوية الأعلى، ويمكنك التحكم بشكل فعال في موضع العنصر وتجنب مشكلات التخطيط غير المتوقعة. تذكر أن الهوامش الرأسية تعتمد على عرض الكتلة التي تحتوي عليها للحفاظ على حجم ثابت ومنع التبعيات الدائرية في تخطيط CSS.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3