طراحي وب واكنشگرا براي ايجاد وبي است كه در همه دستگاهها خوب به نظر آيد. يك وب سايت واكنشگرا براي تنظيم خودكار صفحات مختلف نمايش ونماي ديد مناسب بايد طراحي شود.
تصوير زير نمونه اي از دستگاههاي مختلف با صفحه نمايش متفاوت كه بايد يك طراحي واكنشگراي وب روي آنها نمايش مطلوبي داشته باشد.
در طراحي وب سايت واكنشگرااستفاده ازHTML وCSS ،براي تغيير خودكار اندازه ها ، مخفي نمودن كوچك يابزرگ نمائي يك وب سايت در دستگاههاي(لب تاپ، تبلت ،موبايل و...) مختلف براي نمايش مطلوب وزيباست .باين نمونه توجه كنيد
براي تنظيم نماي ديد در دستگاههاي مختلف ازتگ<meta> با ويژگي هاي مرتبط مطابق زير استفاده مي نمائيم.
<meta name="viewport" content="width=device-width, initial-scale=1.0">
بااين كارنماي صفحه شماتنظيم ميگردد .اين دستور براي مرورگر نحوي كنترل ابعاد ومقياس صفحه را ارائه مي نمايد.
مثال ـ تنظيم نماي ديد
براي واضح شدن مطلب در زير دونمونه بدون تنظيم نماي ديد وبا تنظيم نما آمده تا اثر دستور بهتر مشخص شود.
نكته ـ اگراين صفحه را با گوشي يا تبلت مرور ميكنيد، ميتوانيد روي دو پيوند بالا كليك نمائيد وتفاوت آن دو را در نـماي ديد به بينيد.
تصاوير واكنشگرا، تصاويري هستند كه به خوبي براي هر اندازه اي توسط مرورگر تنظيم ابعاد ميشوند درصورتيكه ابعاد تصوير دقيق وغير قابل تغيير باشد، واكنشگرا نبوده ونماي مناسبي در دستگاههاي مختلف نمايشي ندارد.
براي رفع مشكل از ويژگيwidth استفاده كرده ومقدار آنرا براي تصوير %100تنظيم مي نمائيم .دراي حالت تصوير واكنشگرا بوده ومقياسش بالا وپائين ميرود.
مثال ـ تصوير واكنشگرا
<img src="img_girl.jpg" style="width:100%;">
توجه داشته باشيد كه در مثال بالا ممكن است تصوير از اندازه اصلي خودش هم بزرگتر شود .بهتر اينست كه محدويتي براي بزرگي آن گذاشته شود .براي اينكار ميتوان از ويژگي max-widthاستفاده كرد .
اگر ويژگيmax-width با مقدار%100 تنظيم شود، تصوير كوچكتر ميشود اما بزرگتر از انداره اصليش نميگردد.
مثال ـ تنظيم حداكثر اندازه تصوير
<img src="img_girl.jpg" style="max-width:100%;height:auto;">
عنصرHTML <picture> اجازه ميدهد كه شما تصويري تعريف نمائيد كه با اندازه مرورگر تناسب داشته باشد .با استفاده از عنصر<source> تصوير براي اندازه حد اكثري مرورگر تعريف ميگردد .عنصر فوق در داخل<picture> ميتواند متناسب با تغيير ات پنجره مرورگربا تصاوير متفاوت تكرار گردد.
مثال ـ در اين مثال با تغيير اندازه پنجره مرورگر تصوير پيش بيني شده با آن اندازه نمايش داده ميشود.
<picture> <source srcset="img_smallflower.jpg" media="(max-width: 600px)"> <source srcset="img_flowers.jpg" media="(max-width: 1500px)"> <source srcset="flowers.jpg"> <img src="img_flowers.jpg" alt="Flowers" style="width:auto;"> </picture>
عملكرد اين روش را با لينك اين پيوند click بهتر ميتوانيد درك نمائيد.
،براي اينكه متني باندازه فونتش در مقابل تغيير انداز پنجره مرورگر واكنش نشان دهد وتغيير كند بايد واحد فونتvm تعريف شود .
نكتهvm - مخفف viewport width است
مثال ـ متن واكنشگرا
<h1style="font-size:10vw;">Responsive Text</h1>
نماي ديد مرورگر اندازه پنجره آنست .مقدارvm=1 يعني يك صدم اندازه پنجره .پس اگر نماي ديد 50سانتي متر عرض داشته باشد اندازه فونت نيم سانتي متراست.
علاوه بر تغيير اندازه در متن وتصوير براي واكنشگرائي وب با مديا كوئري ها هم ميتوان اقدام اقدام نمود .با مديا كوري ميتوان براي تغيير اندازه مرورگر استايل شيت خاص متناسب وواكنشگرا تعريف نمود .يعني عناصري از صفحه در هنگام تغييراندازه صفحه مرورگر متناسباتغيير وضعيت مطلوب ميدهند.
بعنوان نمونه سه بخش ستونيleft mene , Main content , right content را در نظر بگيريد .اين سه بامحتوا بصورت پيش فرض در يك رديف قرار دارند.
حال اگر پنجره مرورگر كوچك شود اين سه بخش بصورت پشته در يك ستون قرار ميگيرند .عامل تغيير در استايل شيت دستور@media ميباشد .
مثال ـ نمونه مديا كوئري
<style>* { box-sizing: border-box; } .left { background-color: #2196F3; padding: 20px; float: left; width: 20%; /* The width is 20%, by default */ } .main { background-color: #f1f1f1; padding: 20px; float: left; width: 60%; /* The width is 60%, by default */ } .right { background-color: #04AA6D; padding: 20px; float: left; width: 20%; /* The width is 20%, by default */ } /* Use a media query to add a break point at 800px: */ @media screen and (max-width: 800px) { .left, .main, .right { width: 100%; /* The width is 100%, when the viewport is 800px or smaller */ } } </style>
مثال ـ نمونه كامل وب واكنشگرا كه در صفحات بزرگ.و كوچك خوب نمايش ميشود.