0Pricing
HTML Academy · درس

عنصرا embed وobject

تضمين الإضافات والمحتوى البديل باستخدام embed وobject

عنصرا embed وobject درس مجاني في HTML Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في HTML Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة HTML Academy 4 دروس في المجموع.

عنصر embed

يضمّن <embed> محتوى خارجياً باستخدام إضافة متصفح أو معالج مضمّن في المتصفح. تحدد السمة type نوع MIME، بينما يشير src إلى عنوان URL للمورد. وهو عنصر فارغ لا يحتوي على عناصر فرعية أو محتوى بديل.

عنصر object

يتميز <object> بمرونة أكبر من embed. وتشير السمة data فيه إلى المورد، بينما تحدد السمة type نوع MIME. ويُستخدم المحتوى الفرعي كمحتوى بديل إذا تعذّر تحميل object، ويمكن أن يتضمن object متداخلاً أو نصاً وصفياً.

المحتوى البديل داخل object

ضمّن المحتوى البديل كما يلي: <object data="file.pdf" type="application/pdf"><a href="file.pdf">Download PDF</a></object>. إذا تعذّر على المتصفح عرض ملف PDF داخل الصفحة، فسيعرض رابط التنزيل بدلاً منه. ويُعد المحتوى البديل الميزة الرئيسية لـ object مقارنةً بـ embed.

تضمين ملفات PDF

يمكن تضمين ملفات PDF باستخدام object أو embed: <object data="doc.pdf" type="application/pdf" width="100%" height="600">. يختلف دعم المتصفحات؛ إذ يعرض Chrome وFirefox ملفات PDF أصلاً، بينما قد تعرض متصفحات أخرى مطالبة بالتنزيل. وفّر رابطاً بديلاً.

iframe مقابل object مقابل embed

لتضمين مستندات HTML، يُفضّل استخدام iframe، فهو مصمم لهذا الغرض وله نموذج أمان واضح. أما لإضافات الوسائط، فاستخدم embed، مثل Flash القديم وعرض SVG. وللمستندات التي تحتاج إلى محتوى بديل، استخدم object. في التطوير الحديث، تتولى عناصر HTML5 الأصلية مثل video وaudio وcanvas معظم حالات استخدام الإضافات.

اعتبارات الأمان

يمكن لكل من embed وobject تنفيذ محتوى الإضافات، مثل Flash تاريخياً، وهو ما يمثل سطح هجوم كبيراً. وقد أزالت المتصفحات الحديثة دعم الإضافات. لا تضمّن إلا المحتوى الموثوق. ولا يمكن برمجة المحتوى المضمّن عبر أصل مختلف بالطريقة نفسها المتاحة للمحتوى ذي الأصل نفسه.

SVG باستخدام object

يمكن تضمين SVG باستخدام object: <object data="image.svg" type="image/svg+xml" width="200" height="200">. وعلى عكس عنصر img، يمكن لـ SVG داخل object تشغيل نصوصه البرمجية الخاصة والاستجابة لـ CSS الخارجي إذا كان من الأصل نفسه. استخدم هذا الأسلوب مع SVG التفاعلي عندما يكون SVG المضمّن مباشرةً غير عملي.

عناصر param

مرّر المعلمات إلى إضافة object باستخدام عناصر <param name="autoplay" value="true"> المتداخلة. كانت هذه الطريقة القياسية لضبط كائنات Flash. أما استخدامها حديثاً فنادر، لأن دعم الإضافات أُزيل من المتصفحات.

usemap لخرائط الصور

يمكن أن يعمل object مع usemap لإنشاء خرائط صور، أي مناطق قابلة للنقر داخل صورة مضمّنة. عرّف المناطق داخل عنصر <map> الذي يحتوي على عناصر <area> فرعية. ويُعد SVG الحديث الذي يستخدم href على العناصر نهجاً أفضل للمناطق التفاعلية داخل الصور.

إتاحة الوصول

أضف السمة title إلى كل من embed وobject لتمكين قارئات الشاشة من التعرف عليهما. ويقبل object السمة aria-label. ولا يوفّر أي من العنصرين الدلالات الغنية الخاصة بإتاحة الوصول التي توفرها عناصر HTML5 الأصلية. وبالنسبة إلى محتوى الوسائط، يُفضّل دائماً استخدام عنصري video وaudio الأصليين مع التسميات التوضيحية.

القديم مقابل الحديث

يُعد كل من embed وobject عنصريْن قديمَيْن إلى حد كبير. وقد اختفت حالة الاستخدام الأساسية لهما، وهي Flash. وتشمل الاستخدامات المشروعة الحالية مستندات PDF المضمّنة مع محتوى بديل، وتضمين SVG التفاعلي، والمحتوى القديم الذي لا يمكن تحديثه. وينبغي للمشاريع الجديدة تفضيل عناصر HTML5 الأصلية لجميع احتياجات الوسائط.

اختبار المعرفة

ما الميزة الرئيسية لاستخدام object بدلاً من embed للمحتوى المضمّن؟

الملخص

يُعد embed وobject عنصرين قديمين لتضمين محتوى غير HTML. ويُفضّل استخدام object عند الحاجة إلى محتوى بديل. ويقبل كلاهما تحديد نوع MIME وتمرير المعلمات. أما البدائل الحديثة مثل video وaudio وcanvas وSVG المضمّن مباشرةً، فهي المفضلة في المشاريع الجديدة. ويظل تضمين PDF باستخدام object حالة استخدام شائعة، مع iframe كبديل.

الأسئلة الشائعة

هل درس «عنصرا embed وobject» مجاني؟

نعم — نص درس «عنصرا embed وobject» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة HTML Academy، انتقل إلى CoddyKit PRO. تتضمن دورة HTML Academy 4 دروس في المجموع.

ماذا ستتعلم في «عنصرا embed وobject»؟

تضمين الإضافات والمحتوى البديل باستخدام embed وobject تتمرن على HTML Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ HTML Academy؟

لا تُشترط خبرة سابقة. HTML Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.

كم من الوقت يستغرق درس «عنصرا embed وobject»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس HTML Academy هذا؟

نعم. كل درس في HTML Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. عنصر iframe وsrc وsandbox
  2. أمان iframe: Clickjacking وX-Frame-Options
  3. عنصرا embed وobject
  4. التحميل الكسول لإطارات iframe
← العودة إلى HTML Academy