رفتن به مطلب

طراحی قالب صفحات وب سایت سازگار موبایل (ریسپانسیو)


ارسال های توصیه شده

first-and-last-class.png[h=2]nth-of-type-columns.png

[/h]

responsive-columns.pngطراحی قالب وب سایت سازگار با موبایل کار ساده ای نیست و نیاز به تجربه فراوانی دارد. در صورتی که تجربه ای در ساخت سایت سازگار با موبایل ندارید این کار را به طراحی سایت دارکوب بسپارید. طراحی سایت سازگار با موبایل بسیاری از هزینه های شما در مقایسه با طراحی جداگانه سایت برای موبایل را پایین می آورد. برای ساخت سیستم ستون بندی می بایست جهت صفحه بندی کلاس ستون اول و آخر را بدانید. البته بدون دانستن ستون اول و آخر نیز می توانید ستون بندی سازگار با انواع مرورگرها را داشته باشد. در این مقاله می خواهم به شما نحوه ساخت سیستم ستون بندی سازگار با موبایل توسط nth-of-type دستور css را آموزش دهم. لازم نیست کلاس ستون آخر و اول داشته باشید و یا تعداد ستون ها را بدانید، زیرا همه کارها توسط viewport انجام می شود. زیرا در سایزهای مختلف مرورگر و رزولوشن صفحه قالب به ستون های مختلف تبدیل می گردد.

 

 

بروز خطا در استفاده از کلاس اول و آخر

 

 

به صورت پیش فرض می بایست کلاس ستون اول و آخر (.first و .last) را به کدهای خود اضافه نماییم ولی انجام این کار برای پیاده سازی قالب مناسب برای رزولوشن های مختلف مشکل ایجاد می نماید.

 

 

طراحی سایت موبایل

 

 

استفاده از nth-of-type

 

 

دستور زیر به شما امکان ایجاد فلوت و مارجین را بدون استفاده از (.first و .last) می دهد.

 

 

:nth-of-type(An+B)

- دستور زیر ستون های 4 ام از ستون 1 را انتخاب می نماید.

 

 

.grid4 .col:nth-of-type(4n+1)

- دستور زیر ستون های3 ام از ستون 1 را انتخاب می نماید.

 

 

.grid3 .col:nth-of-type(3n+1)

- دستور زیر ستون های 2 ام از ستون 1 را انتخاب می نماید.

 

 

.grid2 .col:nth-of-type(2n+1)

طراحی سایت موبایل

 

 

.grid4 .col:nth-of-type(4n+1), .grid3 .col:nth-of-type(3n+1), .grid2 .col:nth-of-type(2n+1)

{ margin-left: 0; clear: left; }

سازگاری با موبایل توسط Media Queries

 

 

/* col */

.col { background: #eee; float: left; margin-left: 3.2%; margin-bottom: 30px; }

/* grid4 col */

.grid4 .col { width: 22.6%; }

/* grid3 col */

.grid3 .col { width: 31.2%; }

/* grid2 col */

.grid2 .col { width: 48.4%; }

تبدیل 4 ستونه به 3 ستونه

 

 

برای تبدیل 4 ستونه به 3 ستونه که عرض آن کمتر از 740px می باشد

 

 

1. تبدیل عرض .grid4 .col به 31.2%

 

 

2. بازنویسی left margin و clear

 

 

3. ست نمودن مجدد left margin و clear property توسط دستور nth-of-type(3n+1) برای ایجاد قالب سه ستونه

 

 

 

 

 

 

@media screen and (max-width: 740px)

{ .grid4 .col { width: 31.2%; }

.grid4 .col:nth-of-type(4n+1) { margin-left: 3.2%; clear: none; }

.grid4 .col:nth-of-type(3n+1) { margin-left: 0; clear: left; }

}

تبدیل 4 ستونه و 3 ستونه به 2 ستونه

 

 

برای تبدیل 4 ستونه به 3 ستونه و 2 ستونه که عرض صفحه کمتر از 600px باشد نیز به همان روش بالا اقدام نمایید.

 

 

@media screen and (max-width: 600px)

{ /* change grid4 to 2-column */

.grid4 .col { width: 48.4%; }

.grid4 .col:nth-of-type(3n+1) { margin-left: 3.2%; clear: none; }

.grid4 .col:nth-of-type(2n+1) { margin-left: 0; clear: left; }

/* change grid3 to 2-column */

.grid3 .col { width: 48.4%; }

.grid3 .col:nth-of-type(3n+1)

{ margin-left: 3.2%; clear: none; }

.grid3 .col:nth-of-type(2n+1)

{ margin-left: 0; clear: left; }

}

تمام عرض کردن تمامی ستون ها

 

 

برای تمام عرض کردن کلیه ستون ها که رزولوشن صفحه آنها از 400px: کمتر است می بایست به روش زیر اقدام شود.

 

 

@media screen and (max-width: 400px)

{

.col { width: 100% !important; margin-left: 0 !important; clear: none !important; }

}

مشکلات اینترنت اکسپلورر

 

 

هم media queries and nth-of-type توسط اینترنت اکسپلورر 8 به پایین پشتیبانی نمی شود. شما می توانید از selectivizr.js برای nth-of-type و respond.js برای media queries به جهت پشتیبانی اینترنت اکسپلورر استفاده نمایید. هر دوی selectivizr.js and respond.js متاسفانه به یکدیگر به خوبی کار نمی کنند بنابراین ستون بندی ها از 4 به 3 و 2 تغییر نمی یابند. البته فقط در اکسپلورر.

لینک منبع:

 

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

لینک به دیدگاه

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...