ناشناس
سوال 1364
در CSS تفاوت واحدهای em، rem و px چیست؟
ثبت پاسخ جدید
برای ثبت پاسخ، لطفا وارد حساب کاربری خود شوید.
پاسخها
1 پاسخواحد px: همینطور که از اسمش مشخصه، هر px به اندازه ابعاد یک پیکسل روی صفحه نمایشه
واحد em: واحد em به اندازه ابعاد حرف M انگلیسی در فونت جاریه. یعنی اگر مثلا اندازه فونت رو ۱۶ پیکسل در نظر بگیریم، یک em برابر با 16*16 پیکسله که معنیش اینه اگر حرف M انگلیسی رو توی یه مربع بندازیم، اون مربع ۱۶ در ۱۶ پیکسله. جالبی واحد em اینه که اندازه این مربع رو بر اساس اندازه فونت المان والد (parent element) در نظر میگیره. مثلا اگر شما یک div داشته باشید که اندازه فونتش 20px باشه و داخل اون div یک p بذارید و سایزش رو بنویسید 2em، اندازه فونت اون p میشه ۴۰ پیکسل. برای همین اگر بخواید اندازه فونت تمام المانهای داخل اون div رو با هم یک جا ببرید بالا، اون ۲۰ پیکسل رو فقط عوض می کنید.
واحد rem:به معنای root EM میباشد. یک واحد تایپوگرافی که برابر با سایز فونت root است. یعنی 1rem همیشه برابر است با font-size که در html تعریف شده است.
مهم نیست که کجا بکار برده شود، 1rem همیشه برابر است با 16px مگر اینکه سایز فونت html را تغییر دهید.