
Posted on • Updated on
فهم وحدة EM في CSS
الأسئلة الشائعة حول وحدة EM في CSS
سنختتم بالإجابة عن بعض الأسئلة الأكثر شيوعًا حول وحدة EM في CSS.
ما الفرق بين وحدتي em و rem؟
يكمن الفرق الرئيسي بين وحدتي em وrem في نقاطهما المرجعية للحجم الأساسي. ترتبط وحدة em بـ font-size الخاص بـالعنصر الأب. وتعني rem «root em»، وهي ترتبط فقط بـالعنصر الجذر (html). وهذا يجعل وحدة rem أكثر قابلية للتنبؤ وأسهل في الإدارة في المواقع الكبيرة.
كيف أحوّل البكسل إلى em في CSS؟
لتحويل البكسل إلى em، تحتاج إلى معرفة الحجم الكلي لـ 1em، والقيمة الافتراضية هي 16px.
ثم طبّق الصيغة: px / em.
فمثلًا، إذا كان 1em يساوي 16px، فإن 32px تصبح 32 / 16 = 2em.
اطّلع على محولنا PX to EM للتحويل بسهولة.
كيف أحوّل وحدة em إلى بكسل في CSS؟
لتحويل em إلى بكسل، تحتاج إلى معرفة حجم 1em، والقيمة الافتراضية هي 16px.
ثم طبّق الصيغة: em * em size.
فمثلًا، إذا كان 1em يساوي 16px، فإن 2em تصبح 2 * 16 = 32px.
استخدم محول EM to PX للتحويل بسهولة.
لماذا ينبغي استخدام وحدات EM بدلًا من البكسل؟
تقدم وحدة em عدة مزايا مقارنة بالبكسل. فهي تتكيف مع إعدادات متصفح المستخدم، مما يجعل الموقع أكثر إتاحة للمستخدمين الذين زادوا font-size. كما تتيح وحدة em تصميمًا أكثر مرونة واستجابة لأنها تتكيف مع font-size للعنصر الأب.
هل يمكنني استخدام وحدات em لأنماط غير font-size؟
نعم، يمكن استخدام وحدة em مع كل خاصية نمط CSS تقبل قيمة طول، وليس مع font-size فقط. مثلًا: width وheight وpadding وmargin وline-height. يساعد استخدام em لهذه الخصائص على الحفاظ على تخطيط متناسب باختلاف أحجام الشاشات.
هل تدعم جميع المتصفحات وحدة em؟
نعم، تحظى وحدة em بدعم واسع في المتصفحات الحديثة، ومنها Chrome وFirefox وSafari وEdge. يمكنك الاطلاع على دعم وحدة em في وثائق caniuse.
ماذا يحدث إذا قمت بتعشيق عناصر تستخدم وحدة EM؟
إذا قمت بتعشيق عناصر تستخدم وحدة em، فسيكون حجم العنصر الفرعي نسبيًا إلى حجم العنصر الأب. وقد يؤدي ذلك إلى أن يصبح حجم العنصر الفرعي أكبر أو أصغر من المتوقع. لتجنب ذلك، يمكنك استخدام وحدة rem، وهي دائمًا نسبية إلى حجم العنصر الجذر (html).
هل توجد عيوب لاستخدام وحدة EM؟
رغم أن وحدة em تقدم مزايا كثيرة، فقد تكون أصعب في الإدارة من الوحدات المطلقة مثل px. ولأنها نسبية، يمكن أن يتغير حجمها الفعلي حسب حجم العنصر الأب. وقد يجعل ذلك التنبؤ بأحجام العناصر أصعب، خاصةً في التخطيطات المعقدة.
هل يمكنني استخدام وحدة EM في استعلامات الوسائط؟
نعم، يمكنك استخدام وحدة em في استعلامات الوسائط. في الواقع، يمكن أن يؤدي استخدام وحدة em في استعلامات الوسائط إلى تحسين استجابة تصميمك. ولأن وحدات em نسبية، فإنها تتكيف مع إعدادات متصفح المستخدم. وهذا يعني أن استعلامات الوسائط لديك ستتكيّف مع إعدادات المستخدم.
كيف يمكنني حساب حجم العناصر المتداخلة باستخدام وحدة EM؟
لحساب حجم العناصر المتداخلة باستخدام وحدة em، اضرب حجم العنصر الأب في حجم العنصر الابن. على سبيل المثال، إذا كان حجم العنصر الأب 1.5em وحجم العنصر الابن 2em، فسيكون الحجم الفعلي للعنصر الابن 1.5 * 2 = 3em. وذلك لأن حجم العنصر الابن نسبي إلى حجم العنصر الأب.
