آموزش طراحی سایت ریسپانسیو
مفهوم طراحی سایت Responsive یا طراحی سایت ریسپانسیو با توجه به اینکه امروزه فناوری اطلاعات و اینترنت بخش بزرگی از زندگی روزمره را در برگرفته است و می بایست طیف گسترده ی دستگاه هایی که با استفاده از آنها می توان به اینترنت دسترسی داشت را در نظر گرفت، مطرح گردید.
بنابراین انعطاف پذیری سایت، یا طراحی سایت Responsive یکی از مهمترین شاخص های یک طراحی سایت با کیفیت است. و البته عامل پیشرفت کسب و کار اینترنتی می گردد. در این مقاله قصد داریم بهتر و دقیق تر به این موضوع بپردازیم.
طراحی سایت ریسپانسیو چیست؟
طراحی ریسپانسیو (responsive) یا واکنش گرا، طراحی سایت به روشی است که سایت با ابعاد و رزولوشن دستگاه های مختلف سازگاری داشته باشد. در طراحی سایت ریسپانسیو، کاربران در تمامی دستگاه ها مانند تلفن های همراه، لپ تاپ، تبلت و یا نمایشگرهای بزرگ مانند کامپیوتر های رومیزی می توانند به راحتی سایت را بررسی کنند و دیگر نیازی نیست که سایز صفحه را تغییر دهند و از عملیات ZOOM استفاده کنند.
حدود 50 درصد از کاربران اینترنتی از گوشی موبایل برای مشاهده سایت ها استفاده می کنند. حال در نظر بگیرید که یک سایت ریسپانسیو نباشد و به درستی در تلفن های همراه نمایش داده نشود، در این صورت این سایت تعداد زیادی از کاربران را از دست خواهد داد. در این جا ممکن است این سوال پیش بیاید که چگونه متوجه شویم که سایت ریسپانسیو است؟ در ادامه به این سوال پاسخ می دهیم.
چگونه می توان سایت ریسپانسیو را شناسایی کرد؟
برای تشخیص ریسپانسیو بودن یک سایت اگر موبایل یا تبلت در دسترس نداشتید سایت مورد نظر را در لپ تاپ یا کامپیوتر باز کنید و عرض مرورگر را به آهستگی کم و زیاد کنید. اگر با تغییر سایز مرورگرتان تمام عرض سایت را مشاهده کردید و در پایین مرورگر اسکرول ظاهر نشد سایت مورد نظر از طراحی ریسپانسیو استفاده کرده است. اگر با وجود به هم نریختن اجزای صفحه اسکرول در پایین صفحه ظاهر شد سایت به درستی ریسپانسیو نشده است. همچنین برای بررسی ریسپانسیو بودن سایت می توانید در مرورگر فایرفاکس همزمان کلیدهای shift+ctrl+m را بگیرید و از ریسپانسیو بودن سایت خود مطلع شوید.
چگونه سایت را ریسپانسیو کنیم؟
طراحی سایت ریسپانسیو به سایتی گفته می شود که با توجه به دستگاهی که کاربر برای مشاهده سایت استفاده میکند واکنش نشان میدهد.
بنابراین سایت واکنش گرا (Responsive) بدین معنا است که اگر با تبلت، گوشی یا هر وسیله دیگر با هر اندازه که باشد به یک سایت واکنش گرا مراجعه کنید، طول و عرض سایت هم اندازه با دستگاه شما خواهد شد. در ادامه به اهمیت طراحی سایت واکنش گرا می پردازیم.
اهمیت طراحی سایت ریسپانسیو
یک طراحی سایت Responsive می تواند بسیار به رشد و کیفیت سایت شما کمک کند. باتوجه به آمارهای اخیر بسیاری از کاربران متصل به اینترنت از گوشی یا تبلت خود استفاده میکنند، که ایران از این آمار مستثنا نیست.
پس در صورتی که میخواهید این طیف گسترده ازکاربران رااز دست ندهید طراحی وبسایت واکنش گرا (Responsive) نیاز اصلی شماست. اما ممکن است سؤالی مطرح گردد که آیا طراحی سایت واکنش گرا (Responsive) تاثیری در سئو سایت دارد یا خیر که در ادامه به روشن شدن این مسئله می پردازیم.
مزایای طراحی ریسپانسیو
سازگاری با تمامی دستگاه ها و نمایش درست سایت در تمام سایزهاانعطاف پذیری بالا سایت و کارآمدی بهترمقرون به صرفه بودن (به نسبت طراحی سایت در نسخه موبایل)مدیریت آسان سایتافزایش بازدیدکنندگان سایتمحبوبیت بیشتر در بین موتورهای جستجو و کسب رتبه بهتر و بالاتر در موتورهای جست و جو مانند گوگلتجربه کاربری مناسب(UI)عدم نیاز به اپلیکیشن اندروید و یا IOS
آیا طراحی ریسپانسیو ضروری است؟
در سال 2013 آمار فروش جهانی تبلت ها و موبایل های هوشمند از فروش کامپیوتر پیشی گرفت و پیش بینی می شود آمار بازدیدهای اینترنتی بوسیله این دستگاه ها از لپ تاپ و رایانه نیز بیشتر شود. پس می توان گفت در آینده ای نزدیک سایت شما بیشتر به وسیله ی موبایل و تبلت مورد بازدید قرار می گیرد و تحقیقات نشان داده است که حتی اگر سایتی در گوگل رتبه ی بالایی داشته باشد اما ریسپانسیو نباشد نرخ پرش آن در موبایل و تبلت افزایش می یابد. که در این صورت زنگ خطری است برای سایت های که ریسپانسیو نیستند و ازسوی دیگر مزیتی است برای سایت های که از ابتدا سایت خود را برپایه اصول ریسپانسیو طراحی کرده اند.
تاثیر طراحی ریسپانسیو بر سئو سایت
اساساً، اگر شما به سمت طراحی سایتی بروید که برای تمامی صفحه نمایش ها طراحی شده است، پس شما تائید گوگل را دریافت خواهید کرد. پس با طراحی ریسپانسیو می توانید شاهد افزایش رتبه ی سایت خود در موتورهای جستجو باشید.
در ادامه تیم طراحی سایت وب یار دلایلی مبنی بر این که طراحی ریسپانسیو می تواند به اهداف سئو سایت کمک کند را با شما در میان می گذارد.
تجربه کاربری
در صورتی که سایت شما ریسپانسیو باشد کاربران با تمامی دستگاه ها به راحتی می توانند از سایت شما بازدید کنند. بنابراین تجربه کاربری خوبی را تجربه خواهند کرد که باعث می شود مجدداً به سایت شما بازگردند که این موضوع در افزایش رتبه ی سایت شما تاثیر مثبت خواهد داشت.
نرخ پرش یا Bounce Rate
هر گاه یک بازدید کننده بعد از ورود به سایت، بدون مشاهده صفحات دیگر از سایت خارج شود، نرخ پرش یا Bounce Rate نامیده می شود. که نرخ پرش به زمان صرف شده در سایت مرتبط است، و گوگل زمان ورود و خروج بازدیدکنندگان را در رتبه بندی سایت در نظر می گیرد.
جلوگیری از محتوای تکراری
برخی از مدیران سایت اقدام به طراحی سایت جداگانه برای تلفن های همراه می کنند، به طوری که همه ی مطالب سایت اصلی شان را در آن کپی می کنند. این اقدام باعث می شود گوگل محتوای هر دو وب سایت را تکراری به حساب آورد. انگار که شما مطالب سایت را کپی کرده اید، و این باعث کاهش شدید رتبه ی سایت در موتورهای جستجو می شود.
برای طراحی سایت ریسپانسیو بعد از طراحی قابل درک از سه سایز وبسایت تان ابتدا در فایل هدر قالبتان دستورات ریسپانسیو کردن زیر را وارد کنید:
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name = "viewport" content = "width =device-width, initial-scale = 1.0">
حالا بروی css قالب کار میکنیم.
مقدار width ها را برابر صد در صد می دهیم .
width:100%;
در طراحی منوی سایت از آیکنی با قابلیت display با مقدار hidden استفاده می کنیم.(چون در حالت ریسپانسیو در تبلت فقط آیکن نمایش داده می شود.)
در پایان آموزش همه کد ها و فایل html قالب موجوداست. حالا تعیین میکنیم که سایز گجت ما در چه ابعادی است.
@media only screen and (max-width:1024px;){
مقادیر دیگر سی اس اس
#menu-icon { display:inline-block;}کد نمایش آیکن منو بجای منو
مرورگرهای موبایل برای سازگاری با سایتهایی که در گذشته طراحی شدهاند، از مفهومی به نام Viewport برای نمایش سایتها استفاده میکنند. Viewport فضایی مجازی است که معمولا حدود ۱۰۰۰ پیکسل عرض دارد. مرورگر موبایل سایت را در این فضای مجازی نمایش میدهد و سپس این تصویر را در فضای واقعی نمایشگر موبایل یا تبلت قرار میدهد.
آموزش کدهای طراحی سایت ریسپانسیو
متا تگ view port و کد ریسپانسیو برای سایت
تگ خیلی مهمی برای کار کردن با طراحی متا تگ viewport است . ما اندازه را برابر یک کردیم. بنابراین پیکسل ها در صفحه نمایش به خوبی نمایش داده میشوند.
همچنین ما از برای نسخه های IE پایین تر از ۹ فایل هایی را فرخوانی کردیم که موجب شناخت مرورگر از عناصر HTML5 و همچین media queries میشود.
پس اولین نکته ی مهمی که یاد گرفتیم متا تگ view port است.
یک توضیح کلی در مورد کدها به شما میدم,اصل کدهای موجود در بدنه ی body شامل تگ های header,section, که از تگ های مهم html5 است,که نمونه کدهایی ساده از html در آن قرار داده ایم.دو فایل styles.css و Responsive.css را در همان شروع کار به فایل html خودمان اضافه کرده ایم.
کدهای فایل Styles.css به شرح زیر است,که البته این کدها همان کدهای معمولی است که قبلا هم در فایل های CSS مان مینوشتیم.که برای زیبا سازی کلی به ظاهر سایتمان از آن استفاده کرده ایم.
@charset “utf-8”;/* CSS Document */
@font-face { font-family: 'BYekan'; src: url('fonts/BYekan.eot');src: url('fonts/BYekan.eot?#iefix') format('embedded-opentype'),url('fonts/BYekan.woff') format('woff'), url('fonts/BYekan.ttf') format('truetype');font-weight: normal; font-style: normal;}
*{ margin: 0; padding: 0; direction: rtl; border:0px;}
html { height: 101%; }
body { background-color: #f2f2f2; padding-bottom: 65px; }
h1 { color: #454545; font-size: 2.0em; margin-bottom: 6px; }
h2 { color: #484848; font-size: 1.5em; margin-bottom: 10px; text-decoration: underline; }
h3 { color: #777; font-size: 1.0em; font-weight: normal; margin-bottom: 10px; }
h4 { color: #656565; font-size: 0.8em;font-weight: bold;margin-bottom: 4px; }
p {color: #565656; font-size: 1.0em; line-height: 1.4em; margin-bottom: 15px; padding-left: 35px; }
small { font-family: "Balthazar", serif; color: #656565; font-size: 0.7em; display: block; margin-bottom: 6px; }
ul { display: block; list-style: none; }
ul li { padding-right: 45px; vertical-align: top;margin-bottom: 5px; color: #666; font-size: 1em; line-height: 2.3em; }
img { border: 0; max-width: 100%; }
a { color: #5582d6; text-decoration: none; }
a:hover { text-decoration: underline; }
#w { margin: 0px auto; padding: 20px 40px; padding-top: 35px; background: #fff; min-width: 260px; max-width: 1200px; border-radius: 0px 0px 8px 8px; }
header { width: 100%; }
#info { float: none; margin-bottom: 12px; }
#photo { float: left; }
#photo img {
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
-moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
background-color: #fff;
border: 1px solid #ccc;
padding: 5px;
}
در مرحله ی بعد به سراغ فایل Responsive.css میرویم , و کدهای زیر را به آن اضافه میکنیم.این کدها موجب ریسپانسیو شدن سایت ما میشوند.
@charset "utf-8";
/* CSS Document */
@media only screen and (max-width: 740px) {
h1 { font-size: 4.5em; }
h3 { font-size: 2.2em; }
h2 { display: block; text-align: center; }
#info { float: none; display: block; text-align: center; }
#photo {
float: none;
display: block;
text-align: center;
}
#w { padding: 20px 15px; }
p { padding: 0; }
}
@media only screen and (max-width: 570px) {
ul li {
display: inline-block;
padding-left: 15px;
width: 140px;
background-position: -5px 0px;
margin-right: 6px;
line-height: 1.7em;
} #skills-left, skills-rightright { margin-bottom: 15px; }</>
}
@media only screen and (max-width: 480px) {
ul li { width: 120px; }
#w { margin: 0 20px; }
}
@media only screen and (max-width: 320px) {
#w { margin: 0 10px; }
}
/** iPhone only **/ >@media screen and (max-device-width: 480px) {</>
ul li { width: 150px; }
}
اندازهی مجازی در طراحی سایت ریسپانسیو به چه معناست؟
به دلیل تراکم بیشتر پیکسلی در موبایلهای امروزی در مقایسه با تراکم متداول در نمایشگرهای لپتاپ و کامپیوترهای شخصی، مرورگرهای موبایل ممکن است هر پیکسل را بزرگتر از یک پیکسل به نمایش درآورند. به این معنی که مثلا اگر عرض یک عنصر ۲۰۰ پیکسل مشخص شود، ممکن است این مقدار مساوی ۴۰۰ پیکسل به نمایش درآید.
درصد بزرگنمایی پیکسل در مرورگرهای مختلف و در دستگاههای مختلف و در سیستمعاملهای مختلف، متغیر است. بنابراین یکی از مهمترین نکات در طراحی واکنشگرا، عدم اعتماد به اندازهی پیکسلها است.
در سایت Screen Sizes میتوانید اندازهی واقعی و مجازی پیکسل در ابزارهای مختلف را مشاهده کنید.
برای مثال گوشی Galaxy SII دارای ۴۸۰ پیکسل واقعی و ۳۲۰ پیکسل مجازی است. به عبارت دیگر، اگر شما یک تصویر با عرض ۳۲۰ پیکسل را در این گوشی به نمایش در بیاورید، این تصویر ۴۸۰ پیکسل فضا اشغال خواهد کرد.
بهترین راه حل برای پایداری طرح، استفاده از واحدهای فیزیکی مانند point، cm، و … است
بزرگنمایی در طراحی ریسپانسیو سایت چگونه است؟
مرورگرهای موبایل ممکن است به صورت پیشفرض صفحات شما را بزرگنمایی یا کوچکنمایی کنند. از موارد قابل کنترل در تگ meta اندازهی بزرگنمایی و کوچکنمایی است.
<meta name="viewport" content="width=480, initial-scale=1, maximum-scale=2">
در کد بالا بیشترین اندازهی بزرگنمایی ۲ برابر و اندازهی پیشفرض آن ۱ تعیین شده است.
عملکرد خاص مرورگر سافاری ممکن است باعث شود بخواهید همیشه مقدار maximum-scale را برابر ۱ قرار دهید. این مرورگر چنانچه صفحهی موبایل گردانده شود تا از حالت عمودی به افقی درآید، صفحه را بار دیگر پردازش نمیکند و همان صفحهی عمودی را بزرگنمایی میکند تا در عرض صفحه جای بگیرد. با تعیین مقدار maximum-scale به ۱، این عملکرد سافاری اصلاح میشود. البته این کار سبب میشود تا کاربران دیگر قادر به بزرگنمایی صفحه نباشند که خود یک اشکال به حساب میآید.
عرض حداقل و حداکثر برای طراحی ریسپانسیو سایت
برای آنکه صفحات وب در همهجا به بهترین شکل ممکن نمایش داده شوند، لازم است تا عرض حداقل و حداکثر برای عنصر body تعیین شود. با توجه به جدول سایت Screen Sizes که بالاتر مشاهده کردید، حداقل عرض مجازی میتواند ۳۲۰ پیکسل و با توجه به آخرین آمار استفاده کنندگان لپتاپ و کامپیوتر، حداکثر عرض مناسب، ۱۰۰۰ پیکسل است. البته ممکن است با توجه به تقسیمپذیری بهتر ۹۶۰ در مقایسه با ۱۰۰۰، بخواهید از این عدد استفاده کنید.
دید جعبهای یا بر پایهی ماژول
در طراحی واکنشگرا، لازم است تا محتوای ما در جعبههای مجزا قرار بگیرند تا امکان جابجایی یا حذف آنها در صورت نیاز فراهم شود. استفاده از تصویرهای بزرگ یا محتوای جدولی که قابلیت تغییر شکل و حذف را به سادگی ندارند، یک مانع در برابر طراحی واکنشگرا به حساب میآیند.
ویژگیهای خاص شیوهنامههای CSS برای پیادهسازی طراحی سایت ریسپانسیو
مهمترین ویژگی CSS برای پشتیبانی طراحی واکنشگرا، دستور media است. این دستور به ما کمک میکند تا بر اساس عرض صفحه، ویژگیهای عنصرهای دلخواه خود را تغییر دهیم. min-width و max-width در مقابل media ابزارهایی هستند که بسیار ما را یاری خواهند داد:
@media ( min-width: 1000px ) {
footer {
width: 1000px;
}
}
@media ( min-width: 401px ) {
footer {
display: block;
}
}
@media ( max-width: 400px ) {
footer {
display: none;
}
}
همان گونه که مشاهده میکنید، شاید لازم شود به ازای هر عنصر، چندین حالت مختلف از نمایش طراحی شود و گاهی لازم شود تا یک عنصر به صورت کامل از دید مخفی شود.
تصویرها در طراحی ریسپانسیو سایت
دانستن دو نکته در مورد تصویرها در طراحی سایت ریسپانسیو الزامی است. نخست انتخاب اندازهی مناسب برای تصویرها طوری که کیفیت آنها در هنگام نمایش کم نشود و حجم آنها هم متناسب با محدودیتهای ارتباطی شبکههای موبایل باشد و نکتهی دوم تغییر عرض خودکار تصویر بر اساس عرض صفحه است.
بهتر است اندازهی تصویر مساوی بزرگترین اندازهی پیکسلهای واقعی نمایشگر کامپیوتر در نظر گرفته شود. برای مثال عدد ۱۰۰۰ یا ۱۳۶۶ میتواند مقدار مناسبی باشد.
در نمایشگرهای کوچکتر، با تعیین اندازهی درصدی عرض و تعیین نکردن ارتفاع یا قرار دادن مقدار auto برای آن میتوان یک تصویر واکنشگرا در اختیار داشت
img#header {
width: 100%;
height: auto;
}
تغییر اندازهی تصاویر پسزمینه هم در css به شکل زیر انجام میشود:
div#header {
width: 100%;
padding-top: 50%;
background-image: url( "01.jpg" );
background-repeat: no-repeat;
background-size: 100% auto;
}
نکتهی قابل توجه در قطعه کد بالا، استفاده از padding-top برای مشخص کردن ارتفاع div است. با توجه به اینکه معیار padding عرض عنصر والد است. با کمک آن میتوان، ارتفاع یک عنصر را به صورت Responsive تعیین کرد.
در ابتدا کدهایی را قرار داده ایم که عرضشان بیشتر از ۷۴۰ می باشد. (max-width: 740px),خیلی آسونه به ترتیب بعد از اون هم کدهایی رو قرار داده ام که عرضشان بیشتر از ۵۷۰ است. همین طور به ترتیب کدها به سادگی نشان دهنده ی همه چیز هستند.
اندازهی فونتها در طراحی سایت ریسپانسیو
بهترین واحد برای مشخص کردن، اندازهی فونتها واحدهای فیزیکی هستند. برای مثال تعیین اندازهی فونت پیشفرض صفحه با مقدار “۱۴pt” به جای “۱۴px” و تعیین اندازهی عنصرهای داخلی بر اساس «درصد» یا «em» راه حلی مطمئن برای داشتن نوشتههای واکنشگرا است.
در این مقاله شما با طراحی سایت ریسپانسیو و مزایای آن آشنا شدید. اگر در فکر طراحی سایت هستید، اگر سایتی پر بازدید می خواهید، اگر می خواهید رتبه سایت خود را افزایش دهید و رتبه ی خوبی در موتورهای جستجو کسب کنید و در هر زمان با دستگاه های متفاوت به سایت خود دسترسی داشته باشید، طراحی سایت و سئو سایت اصفهان وب یار با رعایت اصول سئو سایتی کاملاً ریسپانسیو برای شما طراحی می نماید.