من ثابت إلى ديناميكي: إنشاء موقع ويب سريع الاستجابة مكون من صفحة واحدة
مرحبًا بكم، أيها الزملاء المتحمسون للكود! اليوم، أريد أن أشارك تجربتي الأخيرة في إنشاء موقع ويب سريع الاستجابة مكون من صفحة واحدة لمقهى خيالي يسمى "The Last Stop Café". كان هذا المشروع تمرينًا رائعًا في الجمع بين HTML وCSS وJavaScript لإنشاء تجربة سلسة وسهلة الاستخدام. دعنا نتعمق في بعض النقاط الرئيسية التي يمكنك تطبيقها على مشاريعك الخاصة!
https://coffeepleace.netlify.app/
عند إنشاء موقع ويب مكون من صفحة واحدة، تعد بنية HTML الخاصة بك أمرًا بالغ الأهمية. إليك بعض النصائح:
استخدم علامات HTML5 الدلالية مثل و و و لإعطاء المحتوى الخاص بك معنى وتحسين إمكانية الوصول.
تنظيم المحتوى الخاص بك إلى أقسام منطقية. بالنسبة لموقع المقهى الخاص بنا، كان لدينا أقسام حول، والخدمات، والقائمة، والمعرض، والفريق، والاتصال.
استخدم سمات المعرف لأقسامك. سيكون هذا مهمًا للتمرير السلس لاحقًا!
لم يعد التصميم سريع الاستجابة اختياريًا. إليك كيفية جعل موقعنا يبدو رائعًا على جميع الأجهزة:
استخدم نهج الهاتف المحمول أولاً. ابدأ بأنماط الأجهزة المحمولة ثم استخدم استعلامات الوسائط لضبط الشاشات الأكبر حجمًا.
استفد من CSS Flexbox أو Grid للتخطيطات. استخدمنا Flexbox لعناصر القائمة لدينا:
.menu-items { display: flex; flex-wrap: wrap; justify-content: space-between; }
استخدم الوحدات النسبية (مثل em أو rem أو النسب المئوية) بدلاً من قيم البكسل الثابتة لتحسين قابلية التوسع.
جافا سكريبت هو المكان الذي يحدث فيه السحر. فيما يلي بعض الميزات الرئيسية التي قمنا بتنفيذها:
التمرير السلس
بدلاً من القفزات المتناقضة، قمنا بتنفيذ التمرير السلس إلى الأقسام:
document.querySelectorAll('a[href^="#"]').forEach(anchor => { anchor.addEventListener('click', function (e) { e.preventDefault(); document.querySelector(this.getAttribute('href')).scrollIntoView({ behavior: 'smooth' }); }); });
لقد أنشأنا قائمة برجر للأجهزة المحمولة التي تقوم بتبديل القائمة المنسدلة:
const menuBtn = document.getElementById("menu-btn"); const menu = document.getElementById("menu"); menuBtn.addEventListener("click", () => { menu.classList.toggle("hidden"); });
تحميل المحتوى الديناميكي
بدلاً من ترميز المحتوى بالكامل، استخدمنا JavaScript لتحميل البيانات ديناميكيًا:
const menuSection = document.getElementById("menu"); menuData.forEach(item => { const menuItem = document.createElement("div"); menuItem.innerHTML = `${item.name}
${item.description}
${item.price} `; menuSection.appendChild(menuItem); });
تذكر أن الأداء هو المفتاح لتجربة المستخدم. إليك بعض النصائح:
تحسين الصور لاستخدامها على الويب. فكر في استخدام التنسيقات الحديثة مثل WebP.
تصغير ملفات CSS وJavaScript.
استخدم التحميل البطيء للصور التي لا تكون مرئية على الفور.
اختبر موقع الويب الخاص بك دائمًا على الأجهزة والمتصفحات المختلفة. Chrome DevTools هو صديقك لتصحيح الأخطاء واختبار الاستجابة.
يعد إنشاء موقع ويب سريع الاستجابة مكون من صفحة واحدة طريقة ممتازة لممارسة مهارات HTML وCSS وJavaScript. إنه يعلمك البنية والأسلوب والتفاعل والأداء - جميع الجوانب الحاسمة لتطوير الويب.
أتمنى لك برمجة سعيدة، وأتمنى أن تكون قهوتك قوية ورمزك خاليًا من الأخطاء!
تنزيل الكود المصدري: https://buymeacoffee.com/techmobilebox/e/296490
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3