HTML مسارات الملفات
مفهوم المسار
كلمة مسار ( Path ) يقصد بها المكان الذي يوجد فيه ملف محدد.
عند إضافة رابط في الصفحة سواء لصورة, فيديو, أغنية, برنامج, ملف مضغوط, صفحة أخرى إلخ.. فلا بد من تحديد المسار الموجود فيه بدقة و بدون أي خطأ لأنه في حال وجود خطأ في حرف واحد فإنه لن يعمل.
بشكل عام, هناك أسلوبين يمكنك إعتمادهما عند تحديد مكان وجود الملف و هما:
- وضع مسار نسبي ( Relative Path ) له و معنى ذلك أن مسار الملف يوضع نسبةً لمكان الصفحة التي سيتم إضافته فيها.
- وضع مسار كامل ( Absolute Path ) له و معنى ذلك أن مسار الملف يوضع كما هو بالنسبة للحاسوب.
ما ستتعلمه في هذا الدرس ينطبق على أي ملف مهما كان نوعه, لذا معرفة كيفية تحديد المسار سيفيدك كثيراً في المستقبل خاصةً حين تبدأ بإضافة ملفات .css
و ملفات .js
في صفحاتك أو حتى حين تقوم بعرض صور المستخدمين في المواقع التي تبنيها حينها.
أمثلة شاملة حول وضع مسارات نسبية
في الأمثلة التالية سنفترض أننا نريد عرض صورة في الصفحة و في كل مرة سنفترض أن الصورة موجودة في مكان مختلف بالنسبة للصفحة التي سنعرضها فيها حتى تعرف كيف يمكنك تحديد مكانها بأسلوب Relative Path في أي مكان تكون موجودة فيه.
معلومة
لعرض صورة نستخدم الوسم <img src="">
و مسار الصورة نمرره كقيمة للخاصية src
.
في الدرس التالي ستتعرف على جميع الخصائص التي يمكن إضافتها للصور, و لكن الآن ركز فقط على أسلوب تحديد المسارات.
المثال الأول
في المثال التالي سنفترض أننا نريد عرض صورة في الصفحة إسمها logo.png
و هي موجودة بجانب الصفحة التي سنعرضها فيها كالتالي.
في برنامج VSCode سيظهر شكل الملفات كالتالي مع الإشارة إلى أننا قمنا باعتماد أسلوب Relative Path عند تحديد مسار الصورة.
المثال الثاني
نفس المسار السابق كان بإمكانك إضافة ./
في بدايته ليصبح ./logo.png
و هكذا سيعلم المتصفح أن الصورة موجودة في نفس المكان.
إذاً سواء وضعت ./
أم لم تضع فإن ذلك لن يشكل أي فرق و هذا الأسلوب أيضاً يعتبر Relative Path.
في برنامج VSCode سيظهر شكل الملفات كالتالي.
المثال الثالث
في المثال التالي سنفترض أن الصورة موجودة بداخل مجلد إسمه images
كالتالي.
في برنامج VSCode سيظهر شكل الملفات كالتالي مع الإشارة إلى أننا قمنا باعتماد أسلوب Relative Path عند تحديد مسار الصورة.
المثال الرابع
في المثال التالي سنفترض أن الصفحة موجودة بداخل مجلد إسمه pages
و الصورة التي سيعرضها فيها موجودة بجانب هذا المجلد كالتالي.
في برنامج VSCode سيظهر شكل الملفات كالتالي مع الإشارة إلى أننا قمنا باعتماد أسلوب Relative Path عند تحديد مسار الصورة.
ملاحظة: وضع ../
في بداية المسار مهم جداً لأنه يعلم المتصفح بأنه يجب الرجوع خطوة واحدة للوراء حتى يجد الصورة.
المثال الخامس
في المثال التالي سنفترض أن الصفحة موجودة بداخل مجلد إسمه pages
و الصورة التي سيعرضها فيها موجودة في مجلد إسمه images
كالتالي.
في برنامج VSCode سيظهر شكل الملفات كالتالي مع الإشارة إلى أننا قمنا باعتماد أسلوب Relative Path عند تحديد مسار الصورة.
إذاَ للوصول إلى الصورة من الصفحة, يجب الرجوع خطوة للوراء لذلك وضعنا ../
في بداية المسار, بعدها يجب الدخول للمجلد images
بالضبط كما فعلنا.
أمثلة شاملة حول وضع مسارات كاملة
وضع مسار كامل يعني وضع المسار كاملاً بالنسبة للحاسوب أو الموقع الذي يوجد الملف عليه.
المثال الأول
في المثال التالي سنفترض أننا نريد عرض صورة في الصفحة إسمها logo.png
موجودة في المسار D://workspaces/html/images/ في الحاسوب الذي نعمل عليه باعتماد أسلوب Absolute Path كالتالي.
مثال
<img src="D://workspaces/html/images/logo.png">
هنا كأننا نقول للمتصفح, إذهب للقرص D
ثم أدخل للمجلد workspaces
ثم أدخل للمجلد images
حتى تجد الصورة logo.png
.
المثال الثاني
في المثال التالي سنفترض أننا نريد عرض صورة في الصفحة إسمها harmash-logo.png
موجودة في موقعنا في المسار https://harmash.com/tutorials/html/files-paths/ باعتماد أسلوب Absolute Path كالتالي.
مثال
<img src="https://harmash.com/tutorials/html/files-paths/harmash-logo.png">
وضع نفس المسار بشكل كامل و بشكل نسبي
يمكنك دائماً وضع المسار بالأسلوب الذي تريده طالما أنك تعرف أين توجد الملفات بالضبط في حاسوبك أو في موقعك.
في المثال التالي قمنا بعرض صورة موجود في موقعنا مرتين, أول مرة وضعنا مسارها بالكامل و ثاني مرة عرضنا مسارها بالنسبة لمحرر الويب.
مثال
<!-- هنا وضعنا مسار الصورة الكامل في موقعنا --> <img src="https://harmash.com/tutorials/html/files-paths/harmash-logo.png"> <!-- هنا وضعنا مسار الصورة النسبي في موقعنا بالنسبة للمحرر --> <img src="../tutorials/html/files-paths/harmash-logo.png">
هل أستخدم المسار الكامل أو المسار النسبي؟
الأفضل لك دائماً هو تحديد مسارات الملفات بشكل نسبي طالما أن ذلك ممكناً لأن لذلك عدة فوائد منها على سبيل المثال أن تصميمك الذي تفعله على الحاسوب يمكنك رفعه كما هو أونلاين أو تغيير مكانه في حاسوبك و سيعمل بدون الحاجة لإجراء أي تعديل على مسارات الملفات المستخدمة في الصفحات.
عند وضع مسارات نسبية في الصفحة لا تنسى أبداً أنك يجب أن تنقل كل الملفات و المجلدات المرتبطة بها كما فعلنا في الأمثلة السابقة التي وضعنا لك روابط لتحميلها.