0Pricing
HTML Academy · درس

عنصر section في مقابل div

معرفة متى تستخدمون section بدلًا من div عادي

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

عنصر section

يجمع عنصر <section> المحتوى المرتبط في قسم موضوعي:

<section>
  <h2>Contact Information</h2>
  <p>Email: hello@example.com</p>
  <p>Phone: (555) 555-0100</p>
</section>

section مقارنةً بـ div

السؤال الأساسي: هل لهذا التجميع موضوع أو غرض يمكن تسميته؟

  • <section> — نعم؛ فهو يمثل تجميعًا موضوعيًا، وينبغي أن يكون له عنوان
  • <div> — لا؛ فهو مجرد حاوية للتنسيق أو البرمجة النصية

يتطلب section عنوانًا

ينبغي أن يحتوي كل <section> على عنوان (<h2>-<h6>):

<!-- Good: section with heading -->
<section>
  <h2>Our Team</h2>
  <ul>...</ul>
</section>

<!-- Bad: section without heading -->
<section class="hero">  <!-- should be a div -->
  <img src="banner.jpg" alt="">
</section>

متى تستخدم section

استخدم <section> مع:

  • فصول المستند
  • علامات التبويب أو خطوات المعالج
  • أجزاء المقالة الطويلة (المقدمة، والمنهجيات، والنتائج)
  • أقسام التسويق في الصفحة الرئيسية (الميزات، والأسعار، وشهادات العملاء)

متى تستخدم div

استخدم <div> عندما تحتاج فقط إلى حاوية لـ CSS أو JavaScript من دون معنى دلالي:

<div class="layout">   <!-- just a CSS grid container -->
  <nav>...</nav>
  <main>...</main>
</div>

<div id="modal">       <!-- a JavaScript-controlled modal -->
  ...
</div>

استخدام section في مقالة طويلة

استخدم الأقسام لإنشاء فصول داخل article:

<article>
  <h1>Complete Guide to HTML5</h1>

  <section>
    <h2>Introduction</h2>
    <p>HTML5 is the fifth version...</p>
  </section>

  <section>
    <h2>Semantic Elements</h2>
    <p>HTML5 introduced many semantic elements...</p>
  </section>

  <section>
    <h2>Forms</h2>
    <p>HTML5 greatly improved form handling...</p>
  </section>
</article>

أقسام الصفحة الرئيسية

صفحة رئيسية منظّمة باستخدام الأقسام:

<main>
  <section id="hero">
    <h2>Build Better Web Apps</h2>
    <p>The platform for modern developers.</p>
  </section>

  <section id="features">
    <h2>Key Features</h2>
    ...
  </section>

  <section id="pricing">
    <h2>Pricing</h2>
    ...
  </section>
</main>

ينشئ section سياقًا للعناوين

تنشئ الأقسام سياقات جديدة للعناوين في خوارزمية مخطط مستند HTML5:

<section>
  <h2>Chapter 1</h2>   <!-- h2 within section context -->
  <section>
    <h3>Section 1.1</h3>
  </section>
</section>
<!-- Note: the HTML5 outline algorithm was never implemented in browsers -->
<!-- In practice, heading order still depends on h1-h6 numbers, not section nesting -->

استخدام aria-labelledby مع الأقسام

اربط القسم بعنوانه لمساعدة قارئات الشاشة:

<section aria-labelledby="features-heading">
  <h2 id="features-heading">Features</h2>
  <ul>...</ul>
</section>
<!-- Screen reader: "Features section" when entering the section -->

مخطط تدفق اتخاذ القرار

ما عنصر الحاوية الذي ينبغي استخدامه؟

  • تنقل رئيسي؟ → <nav>
  • المحتوى الأساسي للصفحة؟ → <main>
  • محتوى مستقل بذاته؟ → <article>
  • تجميع موضوعي له عنوان؟ → <section>
  • شريط جانبي أو محتوى مرتبط؟ → <aside>
  • مجرد حاوية للتنسيق؟ → <div>

section من دون عنوان: استخدم div

إذا لم تتمكن من منح section عنوانًا، فاستخدم div بدلًا منه:

<!-- This has no heading — it is just a CSS layout container -->
<!-- Use div, not section: -->
<div class="two-column">
  <div class="column">Left content</div>
  <div class="column">Right content</div>
</div>

تحقق سريع

متى ينبغي تفضيل div على section؟

مراجعة: section مقارنةً بـ div

أساسيات section مقارنةً بـ div:

  • <section> — تجميع موضوعي، وينبغي أن يكون له عنوان
  • <div> — حاوية محايدة دلاليًا للتنسيق أو البرمجة النصية
  • ينشئ section منطقة مسماة يمكن لقارئات الشاشة التنقل إليها
  • أضف aria-labelledby لربط القسم بعنوانه
  • عند الشك، استخدم div؛ إذ يمكنك ترقيته لاحقًا دائمًا

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

هل درس «عنصر section في مقابل div» مجاني؟

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

ماذا ستتعلم في «عنصر section في مقابل div»؟

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

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

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

كم من الوقت يستغرق درس «عنصر section في مقابل div»؟

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

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

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

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

  1. header وnav وmain وfooter
  2. عنصر article للمحتوى المستقل
  3. عنصر section في مقابل div
  4. time وaddress وmark
← العودة إلى HTML Academy