ویوپورت (Viewport)
آشنایی با Viewport، meta tag و واحدهای vw/vh برای طراحی واکنشگرا
ویوپورت چیست؟
Viewport ناحیه قابل مشاهده مرورگر است — بدون نوار ابزار و اسکرولبار.
meta tag ضروری
<meta name="viewport" content="width=device-width, initial-scale=1.0">
| پارامتر | توضیح |
|---|---|
width=device-width | عرض ویوپورت = عرض دستگاه |
initial-scale=1.0 | زوم اولیه ۱۰۰٪ |
maximum-scale | حداکثر زوم |
واحدهای ویوپورت
| واحد | توضیح |
|---|---|
vw | ۱٪ عرض ویوپورت |
vh | ۱٪ ارتفاع ویوپورت |
vmin | کوچکترین بُعد |
vmax | بزرگترین بُعد |
dvh | ارتفاع داینامیک (مدرن) ⭐ |
کاربردها
/* هیرو تمام صفحه */
.hero { height: 100vh; }
/* فونت ریسپانسیو */
h1 { font-size: clamp(2rem, 5vw, 4rem); }
/* پدینگ نسبی */
.section { padding: 5vh 5vw; }
مشکل اسکرولبار و 100vw
/* 100vw شامل اسکرولبار میشود! */
.full-width { width: 100vw; } /* ❌ سرریز */
/* بهتر */
.full-width { width: 100%; } /* ✅ */
بهترین شیوهها
- همیشه
viewportmeta tag را در HTML بگذارید - برای ارتفاع تمامصفحه از
100vhیا100dvh - برای فونت ریسپانسیو از
clamp()باvw - از
100vwبا احتیاط — اسکرولبار!
نکات مهم
- بدون viewport meta tag، موبایل سایت را zoom out میکند
100vhدر موبایل به دلیل نوار آدرس متغیر است100dvhمشکل نوار آدرس موبایل را حل میکندclamp(min, vw, max)برای فونت عالی است
این مبحث بخشی از دوره آموزش کامل CSS است.