← مسار IaGenify

الأساسيات

01 · 1–2 أسبوع

ابنِ صفحات نظيفة ومتجاوبة ومتاحة مع العادات التي يحتاجها كل مطور قوي.

قدّم الآن↗
HTML5CSSJavaScript

الأساسيات، يُطبّق عبر عمل حقيقي.

ابنِ صفحات نظيفة ومتجاوبة ومتاحة مع العادات التي يحتاجها كل مطور قوي.

تبدأ صفحة الويب القوية ببنيتها، لا بزخرفتها.

تطوّر مرحلة الأساسيات العادات اللازمة لبناء صفحات واضحة ومتجاوبة ومتاحة: HTML دلالي وCSS مدروس وJavaScript يُستخدم لهدف واضح.

ابدأ بالمعنى والبنية

لا يقتصر HTML على وضع النصوص على الشاشة؛ فالعناوين ومناطق الصفحة والروابط والقوائم والنماذج توضّح للناس والمتصفحات كيفية تنظيم المحتوى. وتسهل البنية المدروسة التنقل والصيانة وتوسيع الصفحة لاحقاً.

اجعل التخطيط مناسباً لكل شاشة

يحوّل CSS هذه البنية إلى تجربة بصرية. ستتدرب على المسافات والتسلسل البصري والتخطيط المتجاوب كي تظل الصفحة مقروءة على الهاتف والشاشة الكبيرة. فالهدف ليس تصغير تصميم الحاسوب، بل جعل المحتوى يتكيف بطبيعته.

أضف السلوك مع الحفاظ على الوضوح

تعرّفك أساسيات JavaScript إلى التفاعل: الاستجابة للمدخلات وتحديث الواجهة وربط السلوك بالمحتوى. وتصبح إتاحة الوصول وSEO اختبارات عملية: هل يستطيع الناس التنقل؟ وهل تفهم محركات البحث بنية الصفحة؟ تجمع المرحلة هذه الأسس في صفحات نظيفة ومتجاوبة.

من الفكرة إلى كود يعمل فعلياً

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

امنح المحتوى بنية ذات معنى

تستخدم الصفحة منطقة رئيسية وتسلسلاً واضحاً للعناوين وقائمة فعلية. تجمع شبكة CSS بين minmax() وauto-fit لإعادة ترتيب البطاقات حسب المساحة بدلاً من فرض تخطيط ثابت.

<main class="program-page">
  <section class="intro" aria-labelledby="page-title">
    <p class="eyebrow">Community learning</p>
    <h1 id="page-title">Build your first web project</h1>
    <p>Learn by making a page people can actually use.</p>
    <a class="button" href="#apply">Explore the program</a>
  </section>

  <section aria-labelledby="outcomes-title">
    <h2 id="outcomes-title">What you will practise</h2>
    <ul class="outcomes">
      <li>Structure content with HTML</li>
      <li>Shape a responsive layout with CSS</li>
      <li>Add useful behavior with JavaScript</li>
    </ul>
  </section>
</main>

<style>
  .outcomes {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: 1rem;
  }
</style>

أضف تفاعلاً متاحاً للجميع

يتحكم الزر بالإجابة ويكشف حالتها عبر aria-expanded. يدعم الزر الأصلي لوحة المفاتيح؛ ويحدّث JavaScript الإجابة الظاهرة والحالة التي تعلنها التقنيات المساعدة.

const questions = document.querySelectorAll("[data-faq]");

questions.forEach((question) => {
  const button = question.querySelector("button");
  const answer = question.querySelector("[data-answer]");

  button.addEventListener("click", () => {
    const isOpen = button.getAttribute("aria-expanded") === "true";
    button.setAttribute("aria-expanded", String(!isOpen));
    answer.hidden = isOpen;
  });
});
اقرأ ثم عدّل بنفسك

غيّر أحد المتطلبات، وتوقّع النتيجة، ثم شغّل الكود للتحقق. أثناء المراجعة، اشرح سبب اختيارك واقتراحاً للتحسين التالي.

التقنيات الأساسية
  • HTML5
  • CSS
  • أساسيات JavaScript
  • إتاحة الوصول
  • بنية SEO