الفرق بين المراجعتين ل"CSS/top"

من موسوعة حسوب
< CSS
اذهب إلى التنقل اذهب إلى البحث
ط (استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}')
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE:الخاصية <code>top</code>}}</noinclude>
 
<noinclude>{{DISPLAYTITLE:الخاصية <code>top</code>}}</noinclude>
الخاصية <code>top</code> في CSS تساهم في تحديد الموضع الرأسي لأحد العناصر التي يمكن أن يتغير مكانها (positioned elements)، وليس لهذه الخاصية تأثير في العناصر التي لا يمكن أن يتغير مكانها (non-positioned elements).<syntaxhighlight lang="css">
+
الخاصية <code>top</code> في CSS تساهم في تحديد الموضع الرأسي لأحد العناصر التي يمكن أن يتغير مكانها (positioned elements)، وليس لهذه الخاصية تأثير في العناصر التي لا يمكن أن يتغير مكانها (non-positioned elements).
 +
 
 +
== بطاقة الخاصية ==
 +
{| class="wikitable" style="width: 100%;"
 +
|-
 +
! scope="row" style="width: 20%;" |[[CSS/initial value|القيمة الابتدائية]]
 +
|<code>auto</code>
 +
|-
 +
! scope="row" |تُطبَّق على
 +
|العناصر التي يمكن أن يتغير مكانها (positioned elements).
 +
|-
 +
! scope="row" |قابلة للوراثة
 +
|لا
 +
|-
 +
!قابلة للتحريك
 +
|نعم
 +
|-
 +
! scope="row" |القيمة المحسوبة
 +
|كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة.
 +
 
 +
|}<syntaxhighlight lang="css">
 
/* <length> قيم */
 
/* <length> قيم */
 
top: 3px;
 
top: 3px;
سطر 22: سطر 42:
 
* عندما تُضبَط الخاصية <code>position</code> إلى <code>static</code> (أي أنَّ العنصر لا يمكن أن يغيّر مكانه)، فلن يكون للخاصية <code>top</code> أيّ تأثير.
 
* عندما تُضبَط الخاصية <code>position</code> إلى <code>static</code> (أي أنَّ العنصر لا يمكن أن يغيّر مكانه)، فلن يكون للخاصية <code>top</code> أيّ تأثير.
 
عند تحديد قيم للخاصيتين <code>top</code> و <code>[[CSS/bottom|bottom]]</code>، وكانت قيمة الخاصية <code>[[CSS/height|height]]</code> غير مُحدِّدة أو كانت <code>auto</code> أو <code>100%</code>، فستُحتَرم القيم المسندة للخاصيتين <code>top</code> و <code>[[CSS/bottom|bottom]]</code>؛ وفي حال استعملت قيمة الخاصية <code>[[CSS/height|height]]</code>، فالأولوية للخاصية <code>top</code> وستُهمَل الخاصية <code>[[CSS/bottom|bottom]]</code>.  
 
عند تحديد قيم للخاصيتين <code>top</code> و <code>[[CSS/bottom|bottom]]</code>، وكانت قيمة الخاصية <code>[[CSS/height|height]]</code> غير مُحدِّدة أو كانت <code>auto</code> أو <code>100%</code>، فستُحتَرم القيم المسندة للخاصيتين <code>top</code> و <code>[[CSS/bottom|bottom]]</code>؛ وفي حال استعملت قيمة الخاصية <code>[[CSS/height|height]]</code>، فالأولوية للخاصية <code>top</code> وستُهمَل الخاصية <code>[[CSS/bottom|bottom]]</code>.  
{| class="wikitable" style="width: 100%;"
 
|-
 
! scope="row" style="width: 20%;" |[[CSS/initial value|القيمة الابتدائية]]
 
|<code>auto</code>
 
|-
 
! scope="row" |تُطبَّق على
 
|العناصر التي يمكن أن يتغير مكانها (positioned elements).
 
|-
 
! scope="row" |قابلة للوراثة
 
|لا
 
|-
 
!قابلة للتحريك
 
|نعم
 
|-
 
! scope="row" |القيمة المحسوبة
 
|كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة.
 
  
|}
 
 
==أمثلة==
 
==أمثلة==
 
يبيّن هذا المثال استخدام الكلمة المحجوزة <code>auto</code> مع عنصر <code>[[HTML/div|<nowiki><div></nowiki>]]</code> موضعه مطلق (absolute):<syntaxhighlight lang="html">
 
يبيّن هذا المثال استخدام الكلمة المحجوزة <code>auto</code> مع عنصر <code>[[HTML/div|<nowiki><div></nowiki>]]</code> موضعه مطلق (absolute):<syntaxhighlight lang="html">
سطر 126: سطر 129:
  
 
== البنية العامة ==
 
== البنية العامة ==
=== القيمة <code>[[CSS/length|<length>]]</code> ===
+
=== <code>[[CSS/length|<length>]]</code> ===
 
قيمة طولية <code>[[CSS/length|<length>]]</code> سالبة أو موجبة تمثِّل:
 
قيمة طولية <code>[[CSS/length|<length>]]</code> سالبة أو موجبة تمثِّل:
 
* المسافة بين الحافة العلوية للعنصر وبين الحافة العلوية للكتلة الحاوية له (containing block)؛ وذلك إذا كان موضع العنصر مطلقًا (absolutely positioned)
 
* المسافة بين الحافة العلوية للعنصر وبين الحافة العلوية للكتلة الحاوية له (containing block)؛ وذلك إذا كان موضع العنصر مطلقًا (absolutely positioned)
 
* المسافة التي ستنتقل وفقها الحافة العلوية للعنصر فوق مكانها الطبيعي؛ وذلك إذا كان موضع العنصر نسبيًا (relatively positioned).
 
* المسافة التي ستنتقل وفقها الحافة العلوية للعنصر فوق مكانها الطبيعي؛ وذلك إذا كان موضع العنصر نسبيًا (relatively positioned).
  
=== القيمة <code>[[CSS/percentage|<percentage>]]</code> ===
+
=== <code>[[CSS/percentage|<percentage>]]</code> ===
 
نسبة مئوية من ارتفاع الكتلة الحاوية على العنصر.
 
نسبة مئوية من ارتفاع الكتلة الحاوية على العنصر.
  
=== القيمة <code>auto</code> ===
+
=== <code>auto</code> ===
* إذا كان موضع العنصر مطلقًا، فهذه القيمة ستؤدي إلى تحديد موضع العنصر اعتمادًا على قيمة الخاصية <code>bottom</code>.
+
* إذا كان موضع العنصر مطلقًا، فهذه القيمة ستؤدي إلى تحديد موضع العنصر اعتمادًا على الخاصية <code>bottom</code>.
* إذا كان موضع العنصر نسبيًا، فهذه القيمة ستؤدي إلى تحديد موضع العنصر اعتمادًا على قيمة الخاصية <code>[[CSS/bottom|bottom]]</code> انطلاقًا من موضع العنصر الابتدائي، وإذا كانت قيمة الخاصية <code>[[CSS/bottom|bottom]]</code> تساوي <code>auto</code> أيضًا، فلن يتحرك العنصر رأسيًا.  
+
* إذا كان موضع العنصر نسبيًا، فهذه القيمة ستؤدي إلى تحديد موضع العنصر اعتمادًا على الخاصية <code>[[CSS/bottom|bottom]]</code> انطلاقًا من موضع العنصر الابتدائي، وإذا كانت الخاصية <code>[[CSS/bottom|bottom]]</code> تساوي <code>auto</code> أيضًا، فلن يتحرك العنصر رأسيًا.  
  
 
=== البنية الرسمية ===
 
=== البنية الرسمية ===

مراجعة 05:00، 3 يوليو 2018

الخاصية top في CSS تساهم في تحديد الموضع الرأسي لأحد العناصر التي يمكن أن يتغير مكانها (positioned elements)، وليس لهذه الخاصية تأثير في العناصر التي لا يمكن أن يتغير مكانها (non-positioned elements).

بطاقة الخاصية

القيمة الابتدائية auto
تُطبَّق على العناصر التي يمكن أن يتغير مكانها (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 مع عنصر <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;

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