سالهاست که ما در وب و طراحی وب به پیروی از طراحی گرافیک، از واحدهای پیکسلی برای مشخص کردن ابعاد و اندازهها استفاده میکنیم. همونطوری که قبلا در مطلب تصاویر SVG آینده وب هستند گفتم، تکنولوژی داره به سمتی حرکت میکنه که توش پیکسلها دائما در حال تغییر هستن. ما سالها از صفحههای نمایش با فشردگی ۱ پیکسل استفاده کردیم و بعد با معرفی شدن صفحهنمایش رتینا از طرف اپل، این فشردگی به ۲ پیکسل تبدیل شد. به این معنی که تعداد پیکسلهایی که در یک اندازه واحد جا میگیرن ۲ برابر شد. بعد از صفحهنمایش رتینا، شرکتهای مختلف فشردگیهای پیکسلی جدید و بالاتری رو معرفی کردند و این مسئله کار رو برای ما طراحهای وب خیلی سخت کرد؛ چرا که باید طرحهای ما تو هر دستگاهی با هر سایز صفحهنمایش و فشردگی پیکسلی، عالی نمایش داده بشن. (لطفا برای توضیحات بیشتر در این مورد، مقالهای که بالاتر بهش اشاره کردم رو بخونید.)
مشکلات طراحی پیکسلی
بخش زیادی از وبسایتها از واحد پیکسل برای تایپوگرافی و تعیین ابعاد استفاده میکن. برای مثال این کار خیلی متداول هست:
font: 14px/22px "Helvetica Neue", Arial, sans-serif;
این روش به خودی خود ایرادی نداره، ولی وقتی بخوایم در مورد کاربردپذیری (Usability) و دستیابیپذیری (Accessibility) در طراحی و یا طراحی واکنشگرا (Responsive Design) حرف بزنیم و تصمیم بگیریم، روش تعیین سایز و ابعاد بر اساس پیکسل مشکلات فراوانی داره.
مشکلات تایپوگرافی
تقریبا تمام مرورگرها به صورت پیشفرض یک فونت و یک اندازه قلم برای تمام صفحات وب تعیین میکنند که اگر صفحهای در وب خودش فونت و سایز رو تعیین نکرده باشه، صفحه رو بشه راحت مشاهده کرد. اکثر مرورگرها برای قلم پیشفرض فونت Times و سایز ۱۶ پیکسل رو انتخاب میکنند و این به صورت یه استاندارد در اومده؛ ولی نکته مهم در این مورد این هست که کاربری که از اون مرورگر استفاده میکنه میتونه این پیشفرض رو تغییر بده. مثلا کسی که مشکل بینایی داره، میتونه به تنظیمات مرورگرش رو باز کنه و به جای ۱۶ پیکسل، ۳۲ پیکسل رو انتخاب کنه، در نتیجه این کار، همه چیز روی وب باید ۲ برابر بشه ولی این اتفاق نمیافته چون بیشتر جاها، طراحهای وب بر اساس پیکسل همه چیز رو تعیین کردند.
تو این حالت کاربر میتونه با استفاده از قابلیت بزرگنمایی مرورگرش صفحه رو بزرگ کنه و متن رو مطالعه کنه، اما چون تمام سایزهای موجود در صفحه بر اساس پیکسل هستن، مرورگر سعیاش رو میکنه که همه چیز رو درست بزرگنمایی بکنه اما این کار همیشه موفق نیست و ممکنه صفحه به هم بریزه.
مشکلات اجزای رابط کاربری
اگر موقع طراحی اجزای رابط کاربری (مانند دکمهها، فرمها و ...) از واحدهای پیکسلی استفاده بشه، باز هم مشکلاتی که بالاتر در موردشون حرف زدم اتفاق میافتن. اولا با تغییر سایز قلم پیشفرض ابعاد رابط کاربری تغییر نمیکنه و دوما اگر با قابلیت بزرگنمایی (Zoom) مرورگر این کار انجام بشه، امکان اینکه اجزا به هم بریزند خیلی زیاد هست.
مشکل مهم دیگهای که وجود داره اینه که اگر از پیکسل برای طراحی اجزای رابط کاربری استفاده کنیم، دیگه اون رابط کاربری مقیاس پذیر (Scalable) نیست. برای مثال ما اگر بخوایم ۳ سایز مختلف از یک دکمه یا فرم رو طراحی کنیم، مجبوریم تمام واحدهای پیکسلی رو ۳ بار برای تمام اجزای رابط کاربری تکرار کنیم. مثلا یه دکمه کوچیک، یه معمولی و یه بزرگ طراحی کنیم و هربار اندازه و ابعادش رو پیکسلی مشخص کنیم. این کار اولا خیلی سخت هست و دوما منطقی نیست. چون ما ممکنه به دلایل مختلف بخوایم رابط کاربریمون رو برای کاربر تغییر بدیم و اگر بر اساس پیکسل کار کنیم، این کار خیلی سخت خواهد بود.