الخاصية top

من موسوعة حسوب
< CSS
اذهب إلى: تصفح، ابحث
الخاصية top في CSS تساهم في تحديد الموضع الرأسي لأحد العناصر التي يمكن أن يتغير مكانها (positioned elements)، وليس لهذه الخاصية تأثير في العناصر التي لا يمكن أن يتغير مكانها (non-positioned elements).
/* <length> قيم */
top: 3px;
top: 2.4em;

/* <percentages> قيم نسبية */
/* تؤخذ نسبةً إلى ارتفاع الكتلة الحاوية للعنصر */
top: 10%;

/* كلمة محجوزة */
top: auto;

/* القيم العامة */
top: inherit;
top: initial;
top: unset;
تأثير الخاصية top يعتمد على قيمة الخاصية position:
  • عندما تُضبَط الخاصية position إلى القيمة absolute أو fixed، فستُحدِّد الخاصية top المسافة بين الحافة العلوية للعنصر وبين الحافة العلوية للكتلة الحاوية له (containing block).
  • عندما تُضبَط الخاصية position إلى relative، فستُحدِّد الخاصية top المسافة التي ستنتقل وفقها الحافة العلوية للعنصر فوق مكانها الطبيعي.
  • عندما تُضبَط الخاصية position إلى sticky، فستعمل الخاصية top كما لو أنَّ موضع العنصر relative عندما يكون ظاهرًا ضمن إطار العرض (viewport)، وستعمل كما لو أنَّه fixed عندما لا يكون ظاهرًا ضمن إطار العرض.
  • عندما تُضبَط الخاصية position إلى static (أي أنَّ العنصر لا يمكن أن يغيّر مكانه)، فلن يكون للخاصية top أيّ تأثير.

عند تحديد قيم للخاصيتين top و bottom، وكانت قيمة الخاصية height غير مُحدِّدة أو كانت auto أو 100%، فستُحتَرم القيم المسندة للخاصيتين top و bottom؛ وفي حال استعملت قيمة الخاصية height، فالأولوية للخاصية top وستُهمَل الخاصية bottom.

القيمة الابتدائية auto
تُطبَّق على العناصر التي يمكن أن يتغير مكانها (positioned elements).
قابلة للوراثة لا
قابلة للتحريك نعم
القيمة المحسوبة كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة.

أمثلة

يبيّن هذا المثال استخدام الكلمة المحجوزة auto مع عنصر <div> موضعه مطلق (absolute):
<div class="parent">
    <span>parent container</span>
    <div class="actual">Actual position</div>
</div>
شيفرة CSS:
.parent {
  background-color: #f8f9fa;
  padding: 1em;
  height: 150px;
}

.actual {
  position: absolute;
  top: auto;

  background-color: #310736;
  color: white;
  box-sizing: border-box;
  width: 250px;
  height: 2em;
  padding: 0.25em;
  text-align: center;
  opacity: 0.9;
}
مثال عن استخدم قيمة طولية <length> مع تحديد موضع العنصر إلى نسبي relative عبر الخاصية position، لاحظ كيف سيتحرّك العنصر إلى الأسفل نسبةً إلى موضعه الأصلي:
.parent {
  background-color: #f8f9fa;
  padding: 1em;
  height: 150px;
}

.actual {
  position: relative;
  top: 20px;

  background-color: #310736;
  color: white;
  box-sizing: border-box;
  width: 250px;
  height: 2em;
  padding: 0.25em;
  text-align: center;
  opacity: 0.9;
}
أما هذا المثال، فهو عن استخدام الخاصية top مع عنصر موضعه مطلق:
.parent {
  background-color: #f8f9fa;
  padding: 1em;
  height: 150px;
  position: relative;
}

.actual {
  position: absolute;
  top: 0;

  background-color: #310736;
  color: white;
  box-sizing: border-box;
  width: 250px;
  height: 2em;
  padding: 0.25em;
  text-align: center;
  opacity: 0.9;
}

دعم المتصفحات

الميزة Chrome Firefox Internet Explorer Opera Safari
الدعم الأساسي 1.0 1.0 5 6 1.0

البنية العامة

القيمة <length>

قيمة طولية <length> سالبة أو موجبة تمثِّل:

  • المسافة بين الحافة العلوية للعنصر وبين الحافة العلوية للكتلة الحاوية له (containing block)؛ وذلك إذا كان موضع العنصر مطلقًا (absolutely positioned)
  • المسافة التي ستنتقل وفقها الحافة العلوية للعنصر فوق مكانها الطبيعي؛ وذلك إذا كان موضع العنصر نسبيًا (relatively positioned).

القيمة <percentage>

نسبة مئوية من ارتفاع الكتلة الحاوية على العنصر.

القيمة auto

  • إذا كان موضع العنصر مطلقًا، فهذه القيمة ستؤدي إلى تحديد موضع العنصر اعتمادًا على قيمة الخاصية bottom.
  • إذا كان موضع العنصر نسبيًا، فهذه القيمة ستؤدي إلى تحديد موضع العنصر اعتمادًا على قيمة الخاصية bottom انطلاقًا من موضع العنصر الابتدائي، وإذا كانت قيمة الخاصية bottom تساوي auto أيضًا، فلن يتحرك العنصر رأسيًا.

البنية الرسمية

top: <length> | <percentage> | auto;

مصادر ومواصفات