Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

HTMLالوسم <a>

  • تعريفه
  • دعم المتصفحات
  • خصائصه
  • إستخدامه
  • تصميمه الإفتراضي
  • نصائح و ملاحظات

تعريفه

بشكل عام نستخدم الوسم <a> على هذا النحو <a href="url">text</a> لعرض رابط في الصفحة.

  • مكان الكلمة text نضع النص الذي نريده أن يظهر أمام المستخدم و الذي يمكنه النقر عليه.
  • مكان الكلمة url نضع الرابط الذي نريد توجيه المستخدم إليه عندما ينقر على النص الظاهر له في الصفحة.

إفتراضياً، الرابط الذي يتم إضافته في الصفحة يظهر على النحو التالي:

  • إن لم يتم فتح الرابط من قبل، فإنه يظهر بلون أزرق و تحته خط.
  • إن تم فتح الرابط من قبل، فإنه يظهر بلون بنفسجي و تحته خط.
  • أثناء النقر على الرابط، فإنه يظهر بلون أحمر.

دعم المتصفحات

الجدول التالي يظهر المتصفحات التي تدعم الوسم <a>.

Chrome Edge Firefox Opera Safari Android
Webview
Chrome
for Android
Firefox
for Android
Opera
for Android
Safari
for IOS
Samsung
Internet
مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم

خصائصه

نود الإشارة إلى أننا سنذكر الخصائص المهمة و المستخدمة فعلياً و نتجاهل أي خصائص لا يوصى باستخدامها.


الخاصية download

يمكن إضافتها للوسم لإعلام المتصفح أنه عند النقر على الرابط سيتم تحميل ملف.

الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.

Chrome Edge Firefox Opera Safari Android
Webview
Chrome
for Android
Firefox
for Android
Opera
for Android
Safari
for IOS
Samsung
Internet
14 18 20 15 10.1 مدعوم 18 20 ? غير مدعوم 1.0

الخاصية href

نضيفها للوسم لتحديد الرابط الذي سيتم توجيه المستخدم إليه عند النقر على الرابط الموضوع في الصفحة، و بشكل عام يجب وضع هذه الخاصية في كل وسم <a> لكي يعتبرهم المتصفح روابط و ليس نصوصاً عادية و لكي تعمل الخصائص الأخرى التي يمكن إضافتها في الوسوم.

الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.

Chrome Edge Firefox Opera Safari Android
Webview
Chrome
for Android
Firefox
for Android
Opera
for Android
Safari
for IOS
Samsung
Internet
مدعوم 12 مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم

الخاصية hreflang

يمكن إضافتها للوسم بهدف تحديد لغة الرابط الذي سيتم توجيه المستخدم إليه.

الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.

Chrome Edge Firefox Opera Safari Android
Webview
Chrome
for Android
Firefox
for Android
Opera
for Android
Safari
for IOS
Samsung
Internet
مدعوم 12 مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم

الخاصية referrerpolicy

يمكن إضافتها للوسم بهدف تحديد معلومات المرسل التي سيتم إرسالها مع طلب المستخدم إلى الموقع الذي سيتلقى طلبه.

الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.

Chrome Edge Firefox Opera Safari Android
Webview
Chrome
for Android
Firefox
for Android
Opera
for Android
Safari
for IOS
Samsung
Internet
مدعوم 12 مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم

يجب تمرير إحدى القيم التالية المهيئة مسبقاً كقيمة للخاصية rel لتحديد ما هي المعلومات التي سيتم إرسالها مع الطلب.

القيمة معناها
no-referrer لعدم إرسال أي معلومة مع طلب المستخدم.
no-referrer-when-downgrade لعدم إرسال أي معلومة في Header طلب المستخدم ( أي المعلومات التي يرسلها المستخدم للموقع و لا تظهر في الرابط ) إذا كان الموقع الذي سيتلقى الطلب لا يستخدم البروتوكل https و هذا هو الحال الإفتراضي.
origin لإرسال المعلومات التالية فقط مع طلب المستخدم ( scheme - host - port ).
origin-when-cross-origin لإرسال المعلومات التالية مع طلب المستخدم ( scheme - host - port ) بالإضافة إلى المسار ( path ) في حال كان الرابط موجود في نفس الموقع.
unsafe-url لإرسال المعلومات التالية فقط مع طلب المستخدم ( origin - path ) أي بدون أي معلومة حساسة مثل إسم المستخدم و كلمة مروره.

الخاصية rel

يمكن إضافتها للوسم بهدف تحديد ما هي طبيعة العلاقة بين الرابط الحالي و الرابط الذي يتم توجيه المستخدم إليه و هذا الأمر مهم جداً بالنسبة لمحركات البحث.

الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.

Chrome Edge Firefox Opera Safari Android
Webview
Chrome
for Android
Firefox
for Android
Opera
for Android
Safari
for IOS
Samsung
Internet
مدعوم 12 مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم

يجب تمرير إحدى القيم التالية المهيئة مسبقاً كقيمة للخاصية rel لتحدد ما هي طبيعة العلاقة بين الرابط الحالي و الرابط الذي يتم توجيه المستخدم إليه.

القيمة معناها
alternate للإشارة إلى أن الرابط الموضوع هو رابط بديل للرابط الحالي في حال كان هذا البديل أفضل و يلائم باقي الخصائص الموضوعة.
author للإشارة إلى أن الرابط الموضوع هو لصفحة تصف مؤلف المحتوى أو توفر طريقة للتواصل معه.
bookmark للإشارة إلى أن الرابط الموضوع دائم و يمكن الرجوع له.
external للإشارة إلى أن الرابط الموضوع ليس تابعاً للموقع الموجودة فيه الصفحة.
help للإشارة إلى أن الرابط الموضوع يقدم مساعدة.
license للإشارة إلى أن الرابط الموضوع يوضح رخصة المحتوى المعروض في الصفحة.
next للإشارة إلى أن الرابط الموضوع هو الرابط التالي الذي يجب الإنتقال إليه لمتابعة أمر ما.
nofollow للإشارة إلى أن الرابط الموضوع ليس مكملاً للموقع و بالتالي لا يعتبر جزء منه، و بشكل عام إذا كنت تستخدم إعلانات أدسينس فشركة جوجل تفرض إضافة هذا القيمة لكل رابط دعائي موضوع في الموقع حتى لا يتعارض مع سياسة الإعلانات الموضوعة من قبل أدسينس.
noreferrer لمنع المتصفح من إرسال أي معلومات مع طلب المستخدم مما يعني أن المستخدم سيكون مجهول بالنسبة للموقع الذي يتم نقله إليه حين ينقر على الرابط.
noopener لمنع النافذة التي تم فتحها في المتصفح بواسطة الكود window.open() عند النقر على الرابط من إمكانية تنفيذ أي كود جافا سكربت ضار من شأنه الوصول لمعلومات المستخدم الحساسة التي كان قد أدخلها في الصفحة السابقة.
prev للإشارة إلى أن الرابط الموضوع هو الرابط التالي الذي يجب الإنتقال إليه لمتابعة أمر ما.
search لإظهار زر للبحث مبني على نتائج بحث سابقة تم إجراؤها بواسطة المتصفح.
لا ننصح بهذا الأمر لأنه يتطلب ذكر معلومات خاصة تساعد في البحث في كل صفحة يتم إنشاؤها في الموقع حتى ينجح ذلك بالإضافة إلى أن المستخدم في العادة يفضل أن يستخدم مربع بحث عادي موجود في الموقع أو يستخدم بحث جوجل.
tag يستخدم للإشارة إلى أن محتوى الرابط الموضوع ينتمي لنفس نوع المحتوى الموجود في الصفحة.

الخاصية target

نضيفها للوسم لتحديد أين سيتم فتح الرابط.

الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.

Chrome Edge Firefox Opera Safari Android
Webview
Chrome
for Android
Firefox
for Android
Opera
for Android
Safari
for IOS
Samsung
Internet
مدعوم 12 مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم

يجب تمرير إحدى القيم التالية المهيئة مسبقاً كقيمة للخاصية target لتحديد أين سيتم فتح الرابط الذي يتم توجيه المستخدم إليه.

القيمة معناها
_self في حال أردت أن يتم فتح محتوى الرابط في نفس الصفحة المفتوحة حالياً (هذا الخيار الإفتراضي).
_blank في حال أردت أن يتم فتح تبويب جديد في المتصفح و إظهار محتوى الرابط فيه.
_top في حال أردت يتم فتح محتوى الرابط في نفس الصفحة مع إزالة أي صفحات متداخلة موضوعة في الصفحة الحالية.
_parent في حال أردت يتم فتح محتوى الرابط مكان الصفحة الموجودة فيها الصفحة الحالية.

الخاصية title

نضيفها للوسم لإظهار تلميح عند تمرير الماوس فوقه.

الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.

Chrome Edge Firefox Opera Safari Android
Webview
Chrome
for Android
Firefox
for Android
Opera
for Android
Safari
for IOS
Samsung
Internet
مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم

الخاصية type

نضيفها للوسم لتحديد نوع محتوى الرابط بأسلوب MIME و هذا الأمر يمكنك فعله بشكل إختياري لأنه غير ضروري.
كمثال بسيط، إذا أردت الإشارة إلى أن الرابط الموضوع يشير لملف CSS يمكنك إضافة الخاصية type="text/css" للوسم.

الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.

Chrome Edge Firefox Opera Safari Android
Webview
Chrome
for Android
Firefox
for Android
Opera
for Android
Safari
for IOS
Samsung
Internet
مدعوم 12 مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم مدعوم

إستخدامه

في المثال التالي قمنا بإضافة رابط للصفحة الرئيسية في موقع هرمش.

المثال الأول

<a href="https://harmash.com">Go to harmash.com</a>
جرب الكود

في المثال التالي قمنا بإضافة تلميح للرابط يتم إظهاره عند تمرير الماوس فوقه.

المثال الثاني

<a href="https://harmash.com" title="Go to harmash.com">harmash</a>
جرب الكود

في المثال التالي قمنا بإضافة رابط عند النقر عليه يقوم بفتح تطبيق البريد الإلكتروني الموجود في جهاز المستخدم و تحديد الجهة التي سيتم إرسال البريد إليها.

المثال الثالث

<a href="mailto:someone@example.com">Send Email</a>
جرب الكود

في المثال التالي قمنا بإضافة الخاصية rel="nofollow" للوسم للإشارة إلى أن الرابط هو رابط إعلاني.

المثال الرابع

<a href="https://twitter.com/harmashcom" rel="nofollow">follow us</a>
جرب الكود

في المثال التالي قمنا بإضافة الخاصية target="_blank" للوسم حتى يتم فتحه في تبويب جديد عندما يتم النقر عليه.

المثال الخامس

<a href="https://harmash.com/learn-typing">Learn Typing</a>
جرب الكود

تصميمه الإفتراضي

بشكل عام جميع المتصفحات تعرضه بالتنسيق التالي.

a:link، a:visited {
    color: (internal value);
    text-decoration: underline;
    cursor: auto;
}

a:link:active، a:visited:active {
    color: (internal value);
}

نصائح و ملاحظات

أثناء تصميم الصفحة، المصمم لا يحتاج أن يحدد قيمة الخاصية href لكل رابط موضوع في الصفحة و قد يكون لا يعرف روابط الصفحات المراد عرضها في الصفحات.
ليظهر نص الرابط الموضوع كأنه رابط عادي يمكن النقر عليه يمكنك ببساطة وضع الرمز # كقيمة للخاصية href و عندها كأنك تقول للمتصفح قم بتوجيه المستخدم إلى لا شيء.

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

مثال

<a href="#">Go to harmash.com</a>
<a>Go to harmash.com</a>
جرب الكود