شرح Media Query في CSS: استخدام Max-Width و Min-Width لتصميم متجاوب مع الجوال
مقدمة إلى التصميم المتجاوب في CSS
عند تطوير أي موقع ويب حديث، لا يكفي أن يظهر المحتوى بشكل جيد على شاشة الكمبيوتر فقط، بل يجب أن يتكيف بسلاسة مع مختلف أحجام الشاشات، بدءاً من الهواتف الذكية وصولاً إلى الأجهزة اللوحية والشاشات الكبيرة. هنا تظهر أهمية Responsive Design، وهو النهج الذي يضمن عرض المحتوى بطريقة مريحة وواضحة مهما اختلف الجهاز المستخدم.
يعتمد التصميم المتجاوب على ضبط تخطيط الصفحة، وأحجام الخطوط، والصور، والعناصر التفاعلية بحيث تستجيب تلقائياً لأبعاد الشاشة. ومن أهم الأدوات التي تجعل ذلك ممكناً في CSS هي Media Query.

ما هو Responsive Design ولماذا يعد أساسياً؟
Responsive Design هو أسلوب في تصميم الواجهات يهدف إلى جعل الموقع قابلاً للاستخدام والقراءة بشكل ممتاز على جميع الأجهزة. وهذا يشمل:
- تكييف التخطيطات Layouts مع مساحة العرض.
- ضبط أحجام النصوص تلقائياً.
- جعل الصور والعناصر المرئية مرنة.
- تحسين تجربة الاستخدام على الشاشات الصغيرة.
في الماضي، كان التركيز الأكبر ينصب على شاشات Desktop وLaptop. أما اليوم، فأصبح من الضروري مراعاة الهواتف، والأجهزة اللوحية، وحتى الساعات الذكية. لذلك لم يعد التصميم المتجاوب خياراً إضافياً، بل متطلباً أساسياً لأي موقع احترافي.
ما هي Media Query في CSS؟
Media Query في CSS هي وسيلة تسمح لك بتطبيق أنماط معينة بناءً على خصائص الجهاز أو نافذة العرض، مثل:
- العرض width
- الارتفاع height
- دقة الشاشة screen resolution
- اتجاه العرض orientation
بمعنى آخر، يمكنك كتابة قواعد CSS تعمل فقط عندما يتحقق شرط محدد، مثل أن يكون عرض الشاشة أقل من 600px، أو بين 600px و768px.
هذا الأسلوب هو ما يتيح إظهار عناصر معينة في الشاشات الكبيرة وإخفاءها أو إعادة ترتيبها في الشاشات الصغيرة.

في الشاشات الكبيرة قد تظهر قائمة بحث أو عناصر تنقل موسعة، بينما في الهاتف يتم تبسيط الواجهة لتناسب المساحة المحدودة.

الصيغة الأساسية لكتابة Media Query
يمكنك كتابة Media Query في CSS باستخدام الصيغة التالية:
@media media-type (media-feature) {
/* Styles go here */
}
شرح مكونات الصيغة
- @media: قاعدة من نوع At-rule في CSS تُستخدم لتطبيق الأنماط وفق شروط معينة.
- media-type: يحدد نوع الوسيط المستهدف، مثل الشاشة أو الطباعة.
- media-feature: يحدد الخاصية التي سيتم التحقق منها مثل العرض أو الارتفاع.
أنواع الوسائط الشائعة
| النوع | الوصف |
|---|---|
| all | يستهدف جميع الأجهزة |
| يستهدف وضع الطباعة أو المعاينة قبل الطباعة | |
| screen | يستهدف الشاشات المختلفة |
| speech | يستهدف أدوات قراءة المحتوى صوتياً مثل screen readers |
في كثير من الحالات، يكون media-type اختيارياً، ويمكن كتابة الصيغة بشكل مختصر كالتالي:
@media (media-feature) {
/* Styles go here */
}
أهم Media Features المستخدمة في التصميم المتجاوب
توجد خصائص كثيرة يمكن استخدامها داخل Media Query، لكن من أكثرها شيوعاً في بناء واجهات متجاوبة:
- width
- height
- orientation
- aspect-ratio
في هذا المقال سنركز على خاصية width لأنها الأكثر استخداماً عند التعامل مع أحجام الشاشات المختلفة.
العوامل المنطقية داخل Media Query
لإنشاء شروط أكثر دقة، يمكن استخدام بعض العوامل المنطقية داخل Media Query:
- and: لربط أكثر من شرط، ويجب أن تتحقق جميعها لتطبيق الأنماط.
- not: لعكس نتيجة الشرط.
- , (الفاصلة): للتعامل مع أكثر من شرط مستقل، ويكفي تحقق أحدها لتطبيق الأنماط.
مثال عملي: استخدام max-width لتنسيق الشاشات الصغيرة
إذا أردت تغيير لون خلفية الصفحة عندما يكون عرض الشاشة 600px أو أقل، يمكنك استخدام max-width بهذه الطريقة:
@media (max-width: 600px) {
body {
background-color: #87ceeb;
}
}
هذا يعني أن المتصفح سيطبق اللون الأزرق الفاتح فقط عندما تكون مساحة العرض مساوية أو أقل من 600px، وهو نطاق شائع للهواتف المحمولة.

مثال عملي: استخدام min-width و max-width معاً
في بعض الحالات، تحتاج إلى استهداف نطاق محدد من الشاشات بدقة، مثل الأجهزة التي يتراوح عرضها بين 600px و768px. هنا يمكن استخدام min-width وmax-width مع العامل and:
@media (min-width: 600px) and (max-width: 768px) {
body {
background-color: #de3163;
}
}
في هذا المثال، سيتغير لون الخلفية إلى الأحمر فقط عندما يقع عرض الشاشة ضمن هذا النطاق. أما إذا كان العرض أقل من 600px أو أكبر من 768px، فلن يتم تطبيق هذه القاعدة.
متى تستخدم max-width ومتى تستخدم min-width؟
استخدام max-width
يفيد max-width عندما تريد تطبيق الأنماط على الشاشات الأصغر من قيمة معينة، مثل الهواتف.
استخدام min-width
يفيد min-width عندما تريد بدء تطبيق الأنماط من عرض معين فما فوق، مثل الأجهزة اللوحية أو شاشات سطح المكتب.
استخدامهما معاً
الدمج بين min-width وmax-width مناسب جداً عند التعامل مع فئة محددة من الأجهزة أو عند تصميم نقاط توقف Breakpoints دقيقة.
هل يجب إنشاء Media Query لكل جهاز؟
الإجابة المختصرة: لا.
ليس من العملي كتابة Media Query منفصلة لكل هاتف أو جهاز لوحي أو شاشة في السوق، لأن الأجهزة كثيرة ومتجددة باستمرار. الأفضل هو الاعتماد على نطاقات عرض منطقية تغطي الفئات الأكثر شيوعاً.
بدلاً من استهداف أسماء الأجهزة، استهدف السلوك الفعلي للتصميم عند أحجام مختلفة من الشاشة.
أشهر Breakpoints في التصميم المتجاوب
فيما يلي نطاقات شائعة يمكن الاستفادة منها عند بناء تصميم متجاوب:
| النطاق | الفئة المستهدفة |
|---|---|
| 320px — 480px | الهواتف المحمولة |
| 481px — 768px | الأجهزة اللوحية وiPads |
| 769px — 1024px | الشاشات الصغيرة وأجهزة Laptop |
| 1025px — 1200px | أجهزة Desktop والشاشات الكبيرة |
| 1201px فأكثر | الشاشات فائقة الاتساع وأجهزة TV |
هذه القيم ليست قواعد ثابتة، لكنها نقطة انطلاق عملية لبناء واجهات مرنة وقابلة للتوسع.
أفضل ممارسات استخدام Media Query في CSS
- ابدأ بتصميم Mobile First ثم أضف تحسينات للشاشات الأكبر باستخدام min-width.
- لا تكثر من نقاط التوقف دون حاجة، حتى يبقى الكود قابلاً للصيانة.
- اختبر التصميم فعلياً على أكثر من حجم شاشة، وليس فقط عبر تغيير أبعاد المتصفح.
- احرص على أن تكون الصور والعناصر المرنة متوافقة مع التخطيط المتجاوب.
- استخدم Media Query لتحسين تجربة المستخدم، لا لمجرد تغيير الألوان أو الأحجام بشكل عشوائي.
لماذا تعد Media Query مهمة لتحسين تجربة المستخدم والسيو؟
التصميم المتجاوب لم يعد مجرد جانب بصري، بل أصبح عاملاً مؤثراً في:
- تحسين تجربة المستخدم على الجوال.
- تقليل معدل الارتداد الناتج عن سوء العرض.
- رفع قابلية القراءة والتفاعل.
- دعم متطلبات SEO الحديثة، خاصة مع أولوية الفهرسة للجوال Mobile-First Indexing.
كلما كان الموقع متجاوباً وسهل الاستخدام على الأجهزة المختلفة، زادت فرصه في تحقيق أداء أفضل في نتائج البحث وفي سياسات القبول ضمن المنصات الإعلانية مثل Google AdSense.
الخلاصة التقنية
Media Query في CSS هي أداة أساسية لبناء واجهات متجاوبة واحترافية. الاستخدام الذكي لـ max-width وmin-width يساعدك على تخصيص تجربة العرض بحسب أحجام الشاشات دون تعقيد غير ضروري. ومن الناحية التقنية، فإن أفضل نهج هو التركيز على سلوك التصميم عند نقاط التوقف الفعلية، وليس على أسماء الأجهزة. بهذه الطريقة تحصل على موقع أكثر مرونة، أسهل في الصيانة، وأفضل أداءً للمستخدم ومحركات البحث.