انتقل إلى محتوى الدرس
الدرس 02
دورة لغة HTML

عناصر لغة HTMLHTML Elements

أتقن بنية عناصر HTML من الجذور: وسوم البداية والنهاية، العناصر الفارغة ذاتية الإغلاق، قواعد التداخل الهرمي، والفرق بين التدفق الكتلي والسطري.
أقسام الدرس
7
الأمثلة
4
اللغة
العربية
تاريخ النشر
المشاهدات
21,273
محتوى الدرس
في هذا الدرس 7تصفّح المواضيع

يتألف أي مستند HTML من وحدات بنائية مترابطة تُسمى العناصر (Elements). ولا يقتصر مفهوم العنصر القياسي على الوسم وحده، بل يشمل الكيان الكامل المكوَّن من ثلاثة أجزاء متلازمة: وسم البداية (Opening Tag)، والمحتوى الداخلي (Content)، ووسم النهاية (Closing Tag).

ومن الضروري التمييز بدقة بين «الوسم» و«العنصر»؛ فالرمزان <h1> و </h1> يمثلان علامتَي الحدود فقط، بينما يمثل الهيكل الكامل من نقطة الفتح مروراً بالنص الداخلي وحتى نقطة الإغلاق عقدة العنصر الفعلية داخل شجرة DOM في ذاكرة المتصفح.

رسم تشريحي يوضح مكونات عنصر HTML الثلاثة من وسم البداية والمحتوى ووسم النهاية

يُكتب وسم البداية بوضع اسم العنصر بين قوسين زاويين هكذا <p>، في حين يتطابق معه وسم النهاية تماماً مع إضافة شرطة مائلة أمامية / قبل اسم العنصر مباشرةً هكذا </p>. وانتبه دائماً لعدم الخلط بين الشرطة الأمامية الصحيحة / والشرطة العكسية \ التي لا يعترف بها محلل اللغة كعلامة إغلاق.

يؤدي نسيان كتابة وسم الإغلاق في عناصر العناوين أو المستند مثل <h1> أو <h2> أو <title> إلى امتداد نطاق العنصر عن طريق الخطأ ليشمل السطور التالية في الصفحة.

HTML
<h1>HTML Elements</h1>
<h2>Course Overview</h2>
<p>Every paired tag must close cleanly.</p>
<p>Use a forward slash in every closing tag.</p>

لا تحتاج جميع عناصر اللغة إلى احتواء نص بداخلها؛ إذ توجد فئة خاصة تُسمى العناصر الفارغة (Void Elements) تؤدي وظيفة مكتفية بذاتها مثل كسر السطر الحالي أو رسم فاصل أفقي بين موضوعين (وكذلك عناصر الصور وحقول الإدخال التي ستتعرف عليها لاحقاً)، ولذلك تكتفي بوسم واحد فقط ويُمنع بتاتاً كتابة وسم إغلاق لها.

نمط العنصرالوظيفة الأساسيةالخطأ الشائع الواجب تجنبه
<br>كسر السطر الحالي داخل عنوان بريدي أو فقرة متعددة الأسطركتابة </br> لأن المتصفح يحسبه سطراً إضافياً ثانياً!
<hr>فاصل موضوعي أفقي يفصل بصرياً ودلالياً بين فكرتينمحاولة حشر نص داخل <hr>...</hr>
<p>...</p>عنصر حاوٍ مزدوج يحيط بالنص بوسم بداية ووسم نهايةمعاملة العناصر الحاوية كعناصر فارغة وترك </p>
HTML
<h2>Campus Address</h2>
<p>Cairo Campus<br>Building 4, Floor 2</p>
<hr>
<h2>Support Hours</h2>
<p>Sunday to Thursday<br>09:00 AM to 05:00 PM</p>

تُبنى صفحات الويب الحقيقية بوضع العناصر داخل بعضها في علاقة «أب وابن وحفيد» تُعرف باسم التداخل الهرمي (Nesting). وحتى يتمكن المتصفح من تشييد شجرة DOM سليمة بلا التباس، يجب الالتزام الصارم بقاعدة الأخير فتحاً هو الأول إغلاقاً (LIFO): أي أن العنصر الداخلي الأقرب للمحتوى يجب أن يُغلق بالكامل قبل إغلاق العنصر الأب المحيط به.

مخطط التداخل الهرمي لعناصر HTML ومقارنة الإغلاق المتناظر السليم بالإغلاق المتقاطع الخاطئ
HTML
<body>
  <h1>Security Bulletin</h1>
  <h2>Daily Check</h2>
  <p>Verify nested tags<br>before saving the file.</p>
</body>

يمتلك كل عنصر مرئي في HTML سلوك تدفق افتراضياً في المتصفح حتى قبل إضافة أي تنسيقات CSS، وينقسم هذا السلوك إلى نمطين أساسيين:

  • العناصر الكتلية (Block-Level Elements): مثل <h1> و <h2> و <p> و <hr>؛ تبدأ دائماً في سطر جديد مستقل وتمتد أفقياً لتحجز عرض الحاوية الأب بالكامل.
  • العناصر السطرية وكسر السطر (Inline Flow): العناصر السطرية النصية (كوسوم إبراز الكلمات والروابط التي ستدرسها في الدروس القادمة) تنساب أفقياً ضمن السطر الحالي ولا تحجز إلا المساحة الدقيقة لكلماتها، بينما يكسر الوسم الفارغ <br> السطر داخل الفقرة الواحدة دون إنشاء صندوق كتلي جديد.

استكشف في الأداة البصرية التالية حدود الصناديق الفعلية للعناصر الكتلية والتدفق السطري وتكامل العناصر الحاوية مع الفارغة:

تتعامل مواصفة HTML5 مع أسماء الوسوم بوصفها غير حساسة لحالة الأحرف (Case-Insensitive)؛ أي أن المتصفح يفسّر <H1> و <P> كما يفسّر <h1> و <p> تماماً. ورغم ذلك، تُجمع أدلة الجودة الهندسية لدى W3C و MDN وفرق التطوير العالمية على قاعدة ذهبية واحدة: اكتب جميع وسوم HTML بحروف إنجليزية صغيرة دائماً (lowercase).

تحقق الحروف الصغيرة قراءةً أسرع بكثير للعين، وتمنع فوضى عدم تطابق الفتح والإغلاق مثل <H2>...</h2>، كما تضمن توافق أسلوبك مع البيئات الصارمة الحساسة لحالة الأحرف كالرسوم المتجهة المدمجة ومعيار XHTML وقوالب الواجهات الحديثة.

تطبّق المتصفحات افتراضياً آلية ذكية تُسمى دمج المسافات البيضاء (Whitespace Collapsing)؛ فمهما وضعت داخل الكود المصدري من مسافات متتالية أو ضغطات زر الجدولة (Tab) أو نزول لأسطر جديدة، يختزلها المتصفح عند العرض في مسافة مفردة واحدة فقط.

تمنحك هذه القاعدة حرية هندسية ممتازة لتنسيق ملفاتك عبر المسافات البادئة (Indentation) بمقدار مسافتين أو أربع مسافات لكل مستوى تداخل، بحيث يسهل اكتشاف أي وسم ناقص بنظرة واحدة دون أن تتأثر المسافات الظاهرة للزائر.

HTML
<h2>Whitespace Demo</h2>
<p>One     space     or     ten     spaces</p>
<p>
  Multi-line source text renders on one clean line.
</p>
خلاصة المعرفة ومحطة الانتقال

ملخص الدرس

حصاد الدرس

مراجعة مركّزة لأهم المفاهيم والقواعد الهندسية التي أتقنتها في هذا الدرس قبل التطبيق العملي

ماذا تعلّمت في هذا الدرس؟

أتقنت في هذا الدرس تشريح عنصر HTML إلى وسم بداية ومحتوى ووسم نهاية، وتعرفت على العناصر الفارغة ذات الوسم الواحد، وقاعدة التداخل المتناظر (LIFO)، والفرق البصري بين العناصر الكتلية والسطرية، ودمج المسافات البيضاء. الخطوة التالية: انتقل إلى درس «خصائص العناصر في لغة HTML» لتتعلم تزويد الوسوم ببيانات إضافية تتحكم في وجهتها وهويتها وسلوكها.

مشاركة

هل كان هذا الدرس مفيدًا؟

جارٍ تحميل الآراء…

ابنِ لغتك البرمجية

المصطلحات5

راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.

0 / 5 مفهومةأول بطاقة، أول خطوة
01 HTML Element عنصر HTML
الوحدة البنائية الكاملة في شجرة المستند، وتتألف من وسم البداية والمحتوى الداخلي ووسم النهاية، أو من وسم مفرد في حالة العناصر الفارغة.
للمراجعة
02 Void Element العنصر الفارغ
عنصر يؤدي وظيفة مستقلة مكتفية بذاتها مثل <br> أو <hr>، ولا يقبل محتوى نصياً بداخله ويُمنع كتابة وسم إغلاق له.
للمراجعة
03 Block-Level Element العنصر الكتلي
عنصر يبدأ دائماً على سطر جديد مستقل ويحجز العرض الأفقي المتاح لحاويته بالكامل مثل <h1> و <h2> و <p> و <hr>.
للمراجعة
04 Inline Element العنصر السطري
عنصر ينساب أفقياً داخل السطر النصي الحالي دون كسره ولا يحجز من العرض إلا المساحة الدقيقة لكلماته.
للمراجعة
05 Whitespace Collapsing دمج المسافات البيضاء
السلوك القياسي في المتصفح الذي يختزل المسافات المتتالية والأسطر الجديدة في الكود المصدري إلى مسافة مرئية واحدة.
للمراجعة

اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.

حروف قليلة. معنى كامل.

الاختصارات2

راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.

0 / 2 مفهومةأول بطاقة، أول خطوة
01 LIFO LIFO
Last-In, First-Out
قاعدة التداخل الهرمي التي تقضي بأن آخر وسم داخلي تم فتحه يجب أن يكون أول وسم يتم إغلاقه.
للمراجعة
02 XHTML XHTML
Extensible HyperText Markup Language
صياغة قديمة صارمة للغة HTML قائمة على قواعد XML كانت تشترط إغلاق العناصر الفارغة بشرطة مائلة ذيلية.
للمراجعة

اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.

من الفهم للتطبيق

مهامك قبل الاختبار

خطوة صغيرة كل مرة. وإنجاز تقدر ترجع له.

0/2مهام منجزة
  1. أعد كتابة مقطع متقاطع خاطئ مثل <body><p>System Alert</body></p> بحيث يُغلق العنصر الابن <p> بالكامل قبل إغلاق العنصر الأب <body> وفق قاعدة LIFO.

  2. بدّل بين الأنماط الثلاثة في أداة التدفق البصري داخل الدرس، ثم اكتب مقطعاً محلياً يجمع عنواناً <h1> وعنواناً فرعياً <h2> وفقرة <p> تتضمن <br> مع فاصل <hr>.

تأشير المهمة إقرار منك بإتمامها، وليس تصحيحًا آليًا للكود. يُحفظ تقدمك في حسابك.

مساحة التحدي

اختبر فهمك.
ووصلها للإتقان.

كل سؤال خطوة لقدّام. اختار، اكتب كود، وشوف نتيجتك فورًا.

10أسئلة 2أنواع تحديات 100%هدف الإتقان
تصحيح تلقائي. فرص بلا حدود.

أكمل المهام، واجمع كل الإجابات الصحيحة. أقل من 100%؟ راجع وأعد المحاولة.

الأسئلة متاحة للاطلاع. سجّل الدخول للتفاعل وحفظ تقدمك.

لمحة عن التحدي10 أسئلة تنتظرك
01

ما الأجزاء الثلاثة التي تُشكّل معاً عنصر HTML القياسي الحاوي للمحتوى؟

02

ما الرمز الذي يميّز وسم النهاية (Closing Tag) عن وسم البداية في لغة HTML؟

03

أي عنصر مما يلي يُعد عنصراً فارغاً (Void Element) لا يقبل وسم إغلاق؟

04

تُعد كتابة </br> الطريقة القياسية الصحيحة لإغلاق عنصر كسر السطر في HTML5.

05

أي مقطع كود مما يلي يلتزم بترتيب التداخل الهرمي السليم (LIFO) في HTML5؟

06

كيف يتصرف العنصر الكتلي مثل <h1> أو <h2> أو <p> افتراضياً داخل تدفق الصفحة؟

07

كيف يختلف سلوك التدفق السطري (Inline) عن العناصر الكتلية مثل <h1> و <p> افتراضياً؟

08

رغم أن المتصفحات لا تفرّق في حالة أحرف وسوم HTML5، فإن كتابة جميع الوسوم بحروف صغيرة (lowercase) هي الممارسة القياسية المعتمدة.

09

إذا كتبت سبع مسافات متتالية بين كلمتين داخل فقرة <p> عادية، فكيف يعرضها المتصفح على الشاشة؟

10

بما أن المتصفح يدمج الأسطر الجديدة المكتوبة داخل الكود في فقرة <p>، فما الوسم الفارغ المستخدم لكسر السطر صراحةً داخلها؟