الفرق بين المراجعتين لصفحة: «CSS/line-height»

من موسوعة حسوب
< CSS
لا ملخص تعديل
 
لا ملخص تعديل
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:الخاصية <code>line-height</code>}}</noinclude>
<noinclude>{{DISPLAYTITLE:الخاصية <code>line-height</code>}}</noinclude>
الخاصية <code>line-height</code> في CSS تضبط المسافة المستخدم للأسطر، كما في النصوص؛ أما على العناصر الكتلية (block elements) فهي تُحدِّد الارتفاع الأدنى للصناديق النصية (line boxes) ضمن العنصر.<syntaxhighlight lang="css">
الخاصية <code>line-height</code> في CSS تضبط المسافة المستخدم للأسطر، كما في النصوص؛ أما على العناصر الكتلية (block elements) فهي تُحدِّد الارتفاع الأدنى للصناديق النصية (line boxes) ضمن العنصر.
/* كلمة محجوزة */
line-height: normal;
 
/* أعداد دون واحدة، ستضرَب بقيمة حجم الخط للعنصر */
line-height: 3.5;
 
/* <length> أطوال مطلقة */
line-height: 3em;
 
/* <percentage> نسب مئوية */
line-height: 34%;


/* القيم العامة */
== بطاقة الخاصية ==
line-height: inherit;
line-height: initial;
line-height: unset;
</syntaxhighlight>
{| class="wikitable" style="width: 100%;"
{| class="wikitable" style="width: 100%;"
|-
|-
سطر 35: سطر 20:
|كما حُدِّدت، ما عدا القيم النسبية التي ستحوّل إلى أطوال مطلقة.
|كما حُدِّدت، ما عدا القيم النسبية التي ستحوّل إلى أطوال مطلقة.
|}
|}
<syntaxhighlight lang="css">
/* كلمة محجوزة */
line-height: normal;
/* أعداد دون واحدة، ستضرَب بقيمة حجم الخط للعنصر */
line-height: 3.5;
/* <length> أطوال مطلقة */
line-height: 3em;
/* <percentage> نسب مئوية */
line-height: 34%;
/* القيم العامة */
line-height: inherit;
line-height: initial;
line-height: unset;
</syntaxhighlight>


== أمثلة ==
== أمثلة ==
سطر 99: سطر 103:
تقبل الخاصية <code>line-height</code> قيمةً من القيم التالية.
تقبل الخاصية <code>line-height</code> قيمةً من القيم التالية.


=== القيمة <code>normal</code> ===
=== <code>normal</code> ===
تختلف القيمة بين المتصفحات، إذ تستعمل متصفحات سطح المكتب القيمة 1.2 تقريبًا، وتختلف اعتمادًا على نوع الخط <code>[[CSS/font-family|font-family]]</code> المستخدم على العنصر.
تختلف القيمة بين المتصفحات، إذ تستعمل متصفحات سطح المكتب القيمة 1.2 تقريبًا، وتختلف اعتمادًا على نوع الخط <code>[[CSS/font-family|font-family]]</code> المستخدم على العنصر.


=== القيمة <code>[[CSS/number|<number>]]</code> ===
=== <code>[[CSS/number|<number>]]</code> ===
القيمة المستخدمة هي الرقم المضبوط مضروبًا بحجم الخط المستخدم على العنصر نفسه، وهذه هي الطريقة المُفضَّلة في أغلبية الحالات لضبط الخاصية <code>line-height</code> لتجنب النتائج غير المتوقعة الناجمة عن وراثة القيم.
القيمة المستخدمة هي الرقم المضبوط مضروبًا بحجم الخط المستخدم على العنصر نفسه، وهذه هي الطريقة المُفضَّلة في أغلبية الحالات لضبط الخاصية <code>line-height</code> لتجنب النتائج غير المتوقعة الناجمة عن وراثة القيم.


=== القيمة <code>[[CSS/length|<length>]]</code> ===
=== <code>[[CSS/length|<length>]]</code> ===
القيمة الطولية <code>[[CSS/length|<length>]]</code> ستُستخدَم لحساب ارتفاع السطر.
القيمة الطولية <code>[[CSS/length|<length>]]</code> ستُستخدَم لحساب ارتفاع السطر.


=== القيمة <code>[[CSS/percentage|<percentage>]]</code> ===
=== <code>[[CSS/percentage|<percentage>]]</code> ===
هذه القيمة تكون نسبةً إلى حجم الخط المستخدم على العنصر نفسه.
هذه القيمة تكون نسبةً إلى حجم الخط المستخدم على العنصر نفسه.


سطر 118: سطر 122:


</syntaxhighlight>
</syntaxhighlight>
== انظر أيضًا ==
* صفحة الخاصية <code>[[CSS/font|font]]</code> التي تؤدي إلى ضبط قيم الخاصيات الفرعية <code>[[CSS/font-style|font-style]]</code> و <code>[[CSS/font-weight|font-weight]]</code> و <code>[[CSS/font-size|font-size]]</code>  و <code>[[CSS/font-stretch|font-stretch]]</code> و <code>[[CSS/font-size-adjust|font-size-adjust]]</code>.
* صفحة الخاصية <code>[[CSS/color|color]]</code> التي تضبط القيمة اللونية للعناصر.
== مصادر ومواصفات ==
== مصادر ومواصفات ==
* مسودة [https://drafts.csswg.org/css-transitions/#animatable-css CSS Transitions].
* مسودة [https://drafts.csswg.org/css-transitions/#animatable-css CSS Transitions].
* مواصفة ‎[http://www.w3.org/TR/CSS2/visudet.html#propdef-line-height CSS Level 2 (Revision 1)‎].
* مواصفة ‎[http://www.w3.org/TR/CSS2/visudet.html#propdef-line-height CSS Level 2 (Revision 1)‎].
* مواصفة [http://www.w3.org/TR/CSS1/#line-height CSS Level 1].
* مواصفة [http://www.w3.org/TR/CSS1/#line-height CSS Level 1].
[[تصنيف:CSS]]
[[تصنيف:CSS|{{SUBPAGENAME}}]]
[[تصنيف:CSS Property]]
[[تصنيف:CSS Property|{{SUBPAGENAME}}]]
[[تصنيف:CSS Font]]
[[تصنيف:CSS Font|{{SUBPAGENAME}}]]
[[تصنيف:CSS Text]]
[[تصنيف:CSS Text|{{SUBPAGENAME}}]]

المراجعة الحالية بتاريخ 07:26، 26 يوليو 2018

الخاصية line-height في CSS تضبط المسافة المستخدم للأسطر، كما في النصوص؛ أما على العناصر الكتلية (block elements) فهي تُحدِّد الارتفاع الأدنى للصناديق النصية (line boxes) ضمن العنصر.

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

القيمة الابتدائية normal
تُطبَّق على جميع العناصر.
قابلة للوراثة نعم
قابلة للتحريك نعم
القيمة المحسوبة كما حُدِّدت، ما عدا القيم النسبية التي ستحوّل إلى أطوال مطلقة.
/* كلمة محجوزة */
line-height: normal;

/* أعداد دون واحدة، ستضرَب بقيمة حجم الخط للعنصر */
line-height: 3.5;

/* <length> أطوال مطلقة */
line-height: 3em;

/* <percentage> نسب مئوية */
line-height: 34%;

/* القيم العامة */
line-height: inherit;
line-height: initial;
line-height: unset;

أمثلة

مثال عن استخدام الخاصية line-height مع مختلف أنواع القيم، لاحظ أنَّ جميع القواعد الآتية ستؤدي إلى ضبط ارتفاع السطر إلى القيمة نفسها:

div { line-height: 1.2;   font-size: 10pt; }
div { line-height: 1.2em; font-size: 10pt; }
div { line-height: 120%;  font-size: 10pt; }
div { font: 10pt/1.2  Georgia,serif; }

من المستحسن ضبط قيمة line-height باستخدام الخاصية المختصرة font كما هو موضَّح أعلاه، لكن فعل ذلك سيتطلب منا ضبط قيمة الخاصية font-family أيضًا.

استخدام القيم الرقمية دون واحدات

المثال الآتي يبيّن لماذا من الأفضل استخدام القيم الرقمية <number> بدلًا من الأطوال <length>، إذ سنستخدم عنصرَي <div>، الأول له إطار أخضر ويستخدم قيمة رقمية دون واحدة، والثاني له إطار أحمر ويستخدم قيمة طولية مع الواحدة em:

<div class="box green">
    <h1>تجنب النتائج غير المتوقعة باستخدام قيم عددية دون واحدات مع الخاصية line-heigth</h1>
  إذ إنَّ وراثة القيم الطولية والنسب المئوية ستؤدي إلى سلوك غير متوقع.
</div>

<div class="box red">
    <h1>تجنب النتائج غير المتوقعة باستخدام قيم عددية دون واحدات مع الخاصية line-heigth</h1>
  إذ إنَّ وراثة القيم الطولية والنسب المئوية ستؤدي إلى سلوك غير متوقع.
</div>

شيفرة CSS:

.green {
  line-height: 1.1;
  border: solid limegreen;
}

.red {
  line-height: 1.1em;
  border: solid red;
}

h1 {
  font-size: 30px;
}

.box {
  width: 18em;
  display: inline-block;
  vertical-align: top;
  font-size: 15px;
}

لاحظ أنَّ قيمة الخاصية line-height للعنصر <h1> الأول محسوبة نسبةً إلى حجم الخط للعنصر نفسه (أي 30px × 1.1 = 33px)، بينما قيمة الخاصية line-height لعنصر <h1> الثاني محسوبة نسبةً إلى حجم الخط للعنصر <div> الأب (أي 15px × 1.1 = 16.5px) وهذه القيمة غير ملائم إطلاقًا.

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

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

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

تقبل الخاصية line-height قيمةً من القيم التالية.

normal

تختلف القيمة بين المتصفحات، إذ تستعمل متصفحات سطح المكتب القيمة 1.2 تقريبًا، وتختلف اعتمادًا على نوع الخط font-family المستخدم على العنصر.

<number>

القيمة المستخدمة هي الرقم المضبوط مضروبًا بحجم الخط المستخدم على العنصر نفسه، وهذه هي الطريقة المُفضَّلة في أغلبية الحالات لضبط الخاصية line-height لتجنب النتائج غير المتوقعة الناجمة عن وراثة القيم.

<length>

القيمة الطولية <length> ستُستخدَم لحساب ارتفاع السطر.

<percentage>

هذه القيمة تكون نسبةً إلى حجم الخط المستخدم على العنصر نفسه.

لاحظ أنَّ النسب المئوية والأطوال ذات الواحدة em قد تؤدي إلى نتائج غير متوقعة (انظر الأمثلة).

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

line-height: normal | <number> | <length> | <percentage>;

انظر أيضًا

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