تهران، سعادت آباد، خیابان کوهستان،
مجتمع کوهستان، سرو ۴، طبقه ۳ واحد ۲
۲۲۱۳۴۴۹۶ ۰۲۱
۳۶۶۶۸۳۲۸ ۰۲۶
info[at]web-city.ir
support[at]web-city.ir

چگونه با FlexBox طراحی انجام دهیم؟

چگونه با FlexBox طراحی انجام دهیم؟

اجازه بدهید در ابتدا به شما بگویم که یاد گرفتن و استفاده از flexbox بسیار ساده میباشد. این سبک تازه و مدرن در زبان CSS بیشتر برای مشکلات Float و Block آبجکتها در داخل صفحه به وجود آمده است. من شنیده ام که بسیاری از طراحان وب سایت گفته اند که flexbox بسیار پیچیده و مشکل میباشد. ولی این رو بارها و بارها به خود بگویید که یاد گرفتن flexbox بسیار ساده میباشد.

یکی از تکنیک های یاد گرفتن flexbox این است که همه چیز بسیار روشن و شفاف باشد. در ابتدا ما میخواهیم بگوییم که flexbox چیست و چرا به وجود آمده است. التبه خود این تکنی برنامه نویسی و طراحی وب سایت استاتیک میتواند در سئو وب سایت شما هم نیز مورد استفاده قرار بگیرد و موتورهای جستجویی مانند گوگل راحتتر بتوانند صفحات وب سایت شما را index نمایند.

FLEXBOX چیست؟

Flexbox یا همان Flexible Box Layout Model هم نامیده میشود, به مجموعه ای از قوانین CSS گفته میشود که میتواند طراحی و چیدمان را برای حالتهای Responsive بسیار راحتتر نماید.

Flexbox یکی از اولین تکنیک های css میباشد که در دنیای مدرن وب امروزه مورد استفاده قرار میگیرد. این کاملا منصفانه و درست است که بگوییم تا قبل از معرفی شدن flexbox هیچ تکنیک مطمئن و معتبری برای پیاده سازی وب سایت های ریسپانسیو وجود نداشته است.
بسیاری از روشهای هک در CSS برای این چنین کارهایی وجود داشته است مانند display: inline-block و مانند اینها. اما همه اینها در وب سایت های ریسپانسیو مشکلاتی را هم داشته اند. به همین دلیل میباشد که بسیاری از وب سایت ها هنوز هم از زبان جاوا اسکریپت برای ریسپانسیو نمودن استفاده مینمایند که امروزه امری بیهوده به نظر میرسد.

Flexbox برای چه طراحی هایی مناسب میباشد؟
Flexbox توسط سازمان W3C ارائه شد و در نگاه اول برای طراحی آبجکتها در داخل صفحه مورد استفاده قرار میگیرد مانند طراحی بخش منوها در یک صفحه و نه کل صفحه.

دلیل اینکه از flexbox برای طراحی کل صفحه استفاده نمی نمایند این است که flexbox همراه و در کنار زبان css میباشد که معمولا با نام تخصصی Grid Layout Module در بین طراحان نیز شناخته میشود. Grid layout برای طراحی کل ساختار یک صفحه وب سایت هم میتواند مورد استفاده قرار بگیرد. اما متاسفانه بسیاری از محدودیتها میتواند در آن وجود داشته باشد. حتی آخرین ورژن از مرورگر گوگل کروم هم میتواند با آن مشکل داشته باشد.

Styling components
Flexbox برای طراحی سایت و دادن Style به بسیاری از عناصر و آبجکتها در صفحه وب سایت مناسب میباشد. چنانچه از قدرت اصلی flexbox استفاده نمایید, میتواند به بسیاری از روش های دیگر برتری داشته باشد. بطوریکه توسط flexbox میتوانید به جای فرمت دهی تک تک آبجکتها, آنها را به صورت گروه درآورده و style مورد نظر را به آنها بدهید.

زمانی که از flexbox استفاده مینماییم به ندرت احتیاج خواهید داشت تا به صورت انفرادی آیتم ها در داخل صفحه وب را موقعیت دهی نمایید. یکی از بهترین گزینه ها برای موقعیت دهی آبجکت ها در داخل صفحه وب سایت محسوب میشود. یکی دیگر از مزیت های دیگر flexbox برای کنترل موقعیت دهی مجموعه ای از آیتم ها در کنار یکدیگر میباشد.
همیشه در طراحی وب به یاد داشته باشید هر آبجکتی میتواند در یک آبجکت بزرگتری قرار داشته باشد. مانند یک صندلی در یک اتاق, یک اتاق در یک خانه, یک خانه در یک محله, یک محله در داخل یک شهر و ….

به طور مشخص flexbox به دو بخش اساسی تقسیم بندی میشود. دسته اول خصوصیت هایی که به آبجکت های Container نسبت داده میشود و دسته دوم خصوصیت هایی که به آبجکت های داخلی یا Child آنها نسبت داده میشود.

پشتیبانی مرورگرها
پشتیبانی در مرورگرها سوال بسیار مهم و البته پیچیده ای میباشد. این مسئله میتواند بسیار پیچیده باشد چراکه flexbox دارای چندین نوع نوشتاری و ساختار میباشد. در ابتدا بعضی از شرکت های ارائه دهنده مرورگرها در پشتیبانی از flexbox مردد بودند و به همین دلیل چند ورژن از flexbox به وجود آمد.
خوشبختانه توسط CSS Browser Prefix میتوانیم از بسیاری از قابلیتهای آن حتی در مرورگرهای قدیمی هم استفاده نماییم. بر طبق گزارشهای سایت caniuse.com تنها مرورگر IE9 کمی مشکلاتی را به وجود آورده است.
خوب پشتیبانی نشدن Flex Box در مرورگر IE9 چندان مهم نمیباشد و برای بسیاری از کاربران و طراحان وب سایت همیشه بدون سر و صدا و حاشیه بوده است.

نسخه های مختلف flexbox
از همکاری و هماهنگی بین بسیاری از سازمان ها و شرکت ها و کمپانی های مرورگرها تشکر مینماییم. هم اکنون بسیاری از مرورگرها به خوبی بسیاری از قابلیتهای flexbox را پشتیبانی مینمایند.

در حال حاضر سه ورژن از flexbox وجود دارد که شما طراحان وب سایت باید از آنها اطلاع داشته باشید.
۱ – ورژن قدیمی
۲ – ورژن میانی
۳ – ورژن جدید
نسخه های مختلف مرورگرها ورژن های متفاوتی از flexbox را پشتیبانی مینمایند. به عنوان مثال مرورگر IE10 نوع ورژن میانی را پشتیبانی میکند.
بر طبق اصول نوشتن CSS Browser Prefix میتوانیم flexbox را از مرورگرهای قدیمی تا مرورگرهای جدید بنویسیم. با وجود اینکه مرورگرهایی که ورژن های جدید را پشتیبانی مینمایند دیگر دستورات ورژن قدیمی flexbox را نخواهند خواند.

رمز و راز فهمیدن flexbox
مهم این است که متوجه شوید همیشه flexbox ربطی به box بودن آبجکت ها در داخل صفحه ندارد. تا به حال تمامی طراحی در صفحات وب سایت بر اساس محور x و y بیان شده است.

به یاد داشته باشید flexbox از نوع vector میباشد. به این معنا که برای استفاده از آن کافی است به طول و درجه آن اشاره نمایید. میتوانید بدون تاثیر گذاشتن بر روی طول آبجکت ها زاویه آنها را تغییر دهید و بالعکس.

*** به کمک CSS گرافیک سایت خود را افزایش دهید، امروز استفاده از فایل های فلش در سایت برای سئو ۱۰۰ درصد مضر میباشید یعنی چون فایل های فلش هیچ محتوای متنی ندارند موتورهای جستجو قادر به تشخیص محتوای سایت نخواهند بود. به همین دلیل گروه طراحی سایت وب شهر در هیچ یک سایت های خود از فایل های فلش استفاده نمی کند.

اشتراک

حمیدرضا عباسی

حمیدرضا عباسی هستم، کارشناس نرم افزار و دانشجوی کارشناسی ارشد تجارت الکترونیک، طراح و توسعه دهنده وب سایت و متخخص سئو، از سال ۹۰ به صورت حرفه ای شروع به فعالیت در زمینه طراحی وب سایت کردم و بسیار علاقه مند و مشتاق به استفاده از تکنولوژی های جدید و بروز در زمینه طراحی وب سایت و تجارت الکترونیک هستم.

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

چهار × 3 =