وحدات المقاسات

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

في هذه الحالة، يمكنك استخدام وحدة ch، وهي تساوي عرض الحرف "0" في الخط المعروض بالحجم المحسوب. تسمح لك هذه الوحدة بتقييد عرض النص باستخدام وحدة مصممة لتحديد حجم النص، والتي بدورها، التحكم الذي يمكن التنبؤ به بغض النظر عن حجم هذا النص. وحدة ch هي إحدى الوحدات القليلة المفيدة في سياقات محددة مثل هذا المثال.

Numbers

تُستخدَم الأرقام لتحديد opacity وline-height وحتى لقيم قنوات الألوان في rgb. الأرقام هي أعداد صحيحة بدون وحدات (1 و2 و3 و100) وأرقام عشرية (0.1 و0.2 و0.3).

للأرقام معانٍ حسب سياقها. على سبيل المثال، عند تحديد line-height، يمثّل الرقم نسبة إذا حدّدته بدون وحدة داعمة:

p {
 
font-size: 24px;
 
line-height: 1.5;
}

في هذا المثال، تساوي القيمة 1.5 ‎150% من حجم الخط المحسوب بالبكسل للعنصر p. وهذا يعني أنّه إذا كانت قيمة p تتضمّن font-size بقيمة 24px، سيتم حساب ارتفاع السطر على أنه 36px.

يمكن أيضًا استخدام الأرقام في الأماكن التالية:

  • عند ضبط قيم للفلاتر: تطبِّق filter: sepia(0.5) فلتر 50% بدرجات اللون البني على العنصر.
  • عند ضبط مستوى التعتيم: يطبّق opacity: 0.5 مستوى التعتيم 50%.
  • في قنوات الألوان: rgb(50, 50, 50)، حيث تكون القيم من 0 إلى 255 مقبولة لضبط قيمة اللون. الاطّلاع على درس الألوان
  • لتحويل عنصر: transform: scale(1.2) يكبِّر العنصر بنسبة %120 من حجمه الأولي.

نِسب مئوية

عند استخدام نسبة مئوية في خدمة مقارنة الأسعار (CSS)، يجب معرفة كيفية احتسابها. على سبيل المثال، يتم احتسابwidth كنسبة مئوية من العرض المتاح في العنصر الرئيسي.

div {
 
width: 300px;
 
height: 100px;
}

div p
{
 
width: 50%;
}

في المثال أعلاه، يبلغ عرض div p 150px، بافتراض أنّ التنسيق يستخدم box-sizing: content-box التلقائي.

إذا ضبطت margin أو padding كنسبة مئوية، سيكونان جزءًا من عرض العنصر الرئيسي، بغض النظر عن الاتجاه.

div {
 
width: 300px;
 
height: 100px;
}

div p
{
 
margin-top: 50%; /* calculated: 150px */
 
padding-left: 50%; /* calculated: 150px */
}

في المقتطف أعلاه، سيتم حساب كل من margin-top وpadding-left على 150px.

div {
 
width: 300px;
 
height: 100px;
}

div p
{
 
width: 50%; /* calculated: 150px */
 
transform: translateX(10%); /* calculated: 15px */
}

إذا ضبطت قيمة transform كنسبة مئوية، ستستند إلى العنصر الذي تم ضبط التحويل عليه. في هذا المثال، قيمة السمة p هي translateX وهي 10% وقيمة width بقيمة 50%. أولاً، احسب العرض: 150px لأنّه ‎50% من عرض العنصر الرئيسي. بعد ذلك، استخدِم 10% من إجمالي 150px، وهو مقدار 15px.

الأبعاد والأطوال

في حال أرفقت وحدة برقم، ستتحول إلى سمة. على سبيل المثال، 1rem هي سمة. في هذا السياق، يُشار إلى الوحدة المرتبطة برقم في المواصفات باسم رمز السمة. الأطوال هي أبعاد تشير إلى المسافة، ويمكن أن تكون إما مطلقة أو نسبية.

الأطوال المطلقة

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

div {
 
width: 10cm;
 
height: 5cm;
 
background: black;
}

إذا طبعت هذه الصفحة، سيتم طباعة الرمز div على شكل مستطيل أسود أبعاده 10×5 سم. يُرجى العِلم أنّه لا يتم استخدام CSS للمحتوى الرقمي فقط، بل أيضًا لتنسيق المحتوى المخصّص للطباعة. يمكن أن تكون الأطوال المطلقة مفيدة حقًا عند التصميم للطباعة.

الوحدة الاسم مكافئ
cm سنتيمتر 1 سم = 96 بكسل/2.54
مم مليمتر 1 ملم = 1/10 من سم 1 سم
س ربع مليمتر ‫1Q = 1/40 من 1 سم
in (بوصة) بوصة 1 بوصة = 2.54 سم = 96 بكسل
pc بيكاس 1pc = 1/6 من 1 بوصة
pt النقاط 1 نقطة = 1/72 من 1 بوصة
px صورة من البكسلات 1 بكسل = 1/96 من 1 بوصة

الأطوال النسبية

يتم احتساب الطول النسبي مقارنةً بقيمة أساسية، تمامًا مثل النسبة المئوية. يكمن الفرق بين هذه النسب المئوية والنسب المئوية في إمكانية تغيير حجم العناصر من خلال السياق. وهذا يعني أن CSS بها وحدات مثل ch تستخدم حجم النص كأساس، وvw التي تستند إلى عرض إطار العرض (نافذة المتصفّح). تكون الطول النسبي مفيدًا بشكل خاص على الويب بسبب طبيعته السريعة الاستجابة.

الوحدات النسبية لحجم الخط

توفر CSS وحدات مفيدة تتناسب مع حجم عناصر أسلوب الخط المعروض، مثل حجم النص نفسه (em وحدة) أو عرض الخطوط الطباعية (ch وحدة).

الوحدة بالنسبة إلى:
em بالنسبة إلى حجم الخط، سيكون 1.5em أكبر بنسبة %50 من حجم الخط الأساسي المحسوب للعنصر الرئيسي. (كان هذا الارتفاع في السابق يساوي ارتفاع الحرف الكبير "م").
ex منهج استقرائي لتحديد ما إذا كان سيتم استخدام ارتفاع الحرف x أو الحرف x أو ‎.5em في حجم الخط المحسوب الحالي للعنصر.
cap ارتفاع الأحرف الكبيرة في حجم الخط المحسوب الحالي للعنصر
ch متوسط تقدم الأحرف لحرف رسومي ضيق في خط العنصر (يمثلها الحرف الرسومي "0").
ic متوسطة تقديم حرف لحرف رسومي بالعرض الكامل في خط العنصر، كما هو موضح في "水" حرف رسومي (CJK مائي، U+6C34)
rem حجم الخط للعنصر الجذر (القيمة التلقائية هي 16 بكسل).
lh ارتفاع سطر العنصر.
rlh ارتفاع سطر العنصر الجذر.
النص، CSS رائع بـ 10 مرات مع تسميات للارتفاع التصاعدي والارتفاع الناقص والارتفاع x. يمثل x-height 1ex و0 يمثّل 1ch

الوحدات النسبية لإطار العرض

يمكنك استخدام سمات إطار العرض (نافذة المتصفّح) كأساس نسبي. وتقسّم هذه الوحدات مساحة إطار العرض المتاحة.

الوحدة نسبةً إلى
vw ‫1% من عرض إطار العرض يستعين المستخدمون بهذه الوحدة لرسم خطوط رائعة، مثل تغيير حجم خط العنوان بناءً على عرض الصفحة بحيث يقوم المستخدم بتغيير الحجم، سيتم تغيير حجم الخط أيضًا.
vh ‫1% من ارتفاع إطار العرض يمكنك استخدام هذا الإجراء لترتيب العناصر في واجهة مستخدم، إذا كان لديك شريط أدوات تذييل مثلاً.
vi 1% من حجم إطار العرض في المحور المضمّن في العنصر الجذر. يشير Axis إلى أوضاع الكتابة. في أوضاع الكتابة الأفقية مثل اللغة الإنجليزية، يكون المحور المضمَّن أفقيًا. في أوضاع الكتابة العمودية، مثل بعض الخطوط اليابانية، يتم عرض المحور المضمّن من الأعلى إلى الأسفل.
vb 1% من حجم إطار العرض في محور حظر العنصر الجذر. بالنسبة لمحور الكتلة، سيكون هذا هو اتجاه اللغة. للغات LTR مثل الإنجليزية محور كتلة عمودي، لأنّ قرّاء اللغة الإنجليزية يحللون الصفحة من أعلى إلى أسفل وضع الكتابة العمودي له محور كتلة أفقي.
قائمة تشغيل الجهازين ‫1% من أصغر سمة لإطار العرض
vmax %1 من البُعد الأكبر لإطار العرض
div {
 
width: 10vw;
}

p
{
 
max-width: 60ch;
}

في هذا المثال، سيكون div 10% من عرض إطار العرض لأن 1vw تمثّل 1% من عرض إطار العرض. العنصر p يحتوي على max-width من 60ch مما يعني أنه لا يمكن أن يتجاوز عرض 60 "0" في الخط والحجم المحسوبَين.

وحدات متنوعة

هناك بعض الوحدات الأخرى التي تم تحديدها للتعامل مع أنواع معينة من القيم.

وحدات الزوايا

في وحدة الألوان، نطّلِع على وحدات الزاوية، التي تكون مفيدة لتحديد قيم الدرجات، مثل درجة اللون في hsl. وهي مفيدة أيضًا لتدوير العناصر ضمن دوال التحويل.

div {
 
width: 150px;
 
height: 150px;
 
transform: rotate(60deg);
}

باستخدام وحدة الزاوية deg، يمكنك تدوير div بزاوية 90 درجة على محور مركزه.

div {
 
background-image: url('a-low-resolution-image.jpg');
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  div
{
   
background-image: url('a-high-resolution-image.jpg');
 
}
}

وحدات الدقة

في المثال السابق، قيمة min-resolution هي 192dpi. تشير الوحدة dpi إلى نقاط لكل بوصة. وهناك سياق مفيد لذلك هو اكتشاف الشاشات عالية الدقة للغاية، مثل شاشات Retina في استعلام عن الوسائط وتعرض صورة بدقة أعلى.

التحقّق من فهمك

اختبِر معلوماتك حول تحديد المقاس

أي مما يلي يُعد بُعدًا صالحًا؟

إم
ui
ch
في
الثامن
بكسل
ux
ex
سم

ما الفرق بين الوحدات المطلقة والوحدات النسبية؟

يتم احتساب الطول المطلق مقارنةً بقيمة أساسية مشترَكة واحدة، حيث تتم مقارنة وحدة نسبية بقيمة أساسية يمكن أن تتغيّر.
لا يمكن تغيُّر القيم المطلقة، ولكن يمكن أن تتغيّر الوحدات النسبية

وحدات إطار العرض مطلقة.

خطأ
صحيح

الموارد