تخطَّ إلى المحتوى

position

خاصية تموضع العنصر position

خاصية position تخرج العنصر من التدفق الطبيعي وتموضعه: نسبيًا، مطلقًا داخل أب، مثبتًا بالشاشة، أو لاصقًا عند التمرير.

خمس شخصيات للتموضع: static التدفق الطبيعي (الافتراضي)، وrelative يزيح العنصر عن مكانه الأصلي مع حفظ فراغه، وabsolute يقتلعه ويموضعه نسبةً لأقرب أب positioned، وfixed يثبته بنافذة المتصفح مهما مرّرت، وsticky الهجين الذكي: طبيعي حتى تصل حافته حدًا محددًا فيلتصق (ترويسة هذا الموقع مثال حي).

القاعدة التي يجهلها المبتدئون: absolute يبحث عن أقرب أب له position غير static — لذلك العرف الشائع: relative على الأب وabsolute على الابن.

الصياغة

selector {
  position: absolute; /* static | relative | fixed | sticky */
  top: 0; inset-inline-end: 0;
}

⚡ جرّب بنفسك

عدّل الكود واضغط «تحديث» لترى النتيجة فورًا — التجربة أفضل معلّم.

🎨 محرّر HTML/CSS
<style>
  .parent { position: relative; height: 120px; background: #ede9fe; border-radius: 10px; }
  .badge { position: absolute; top: 8px; left: 8px; background: #7c5cff; color: white; padding: 4px 10px; border-radius: 99px; font-size: 13px; }
</style>
<div class="parent">
  <span class="badge">absolute داخل relative</span>
</div>
النتيجة المباشرة:

أهم القيم

القيمةالوظيفة
relativeإزاحة عن المكان الأصلي + يصبح مرجعًا لأبنائه المطلقين
absoluteاقتلاع وتموضع نسبة لأقرب أب positioned
fixedتثبيت بنافذة المتصفح — أزرار عائمة وأشرطة دائمة
stickyطبيعي ثم يلتصق عند حد top المحدد — ترويسات الجداول والأقسام
top / bottom / inset-inline-start...إحداثيات التموضع (النسخ المنطقية تحترم RTL)

💡 نصائح عملية

  • الوصفة الأشهر بالويب: relative للأب + absolute للابن (شارة فوق بطاقة)
  • sticky لا يعمل غالبًا بسبب overflow مخفي على أحد الأجداد — أول ما تفحصه

⚠️ أخطاء شائعة

  • absolute بلا أب positioned فيهرب العنصر لتموضع نسبة للصفحة كلها
  • بناء تخطيط كامل بـ absolute — هش وينكسر بأي محتوى متغير؛ التخطيط لـ flex/grid

خصائص ذات صلة

🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار CSS الكامل بالعربي.

📚 للتعمق التقني الكامل بالإنجليزية: MDN Web Docs