Maison> interface Web> js tutoriel> le corps du texte

Créer un site Web Snap

WBOY
Libérer: 2024-08-31 06:33:39
original
948 Les gens l'ont consulté

Build a Snap Website

Introduction

Bonjour les développeurs ! Je suis ravi de vous présenter mon dernier projet : unSnap Website. Ce projet est parfait pour ceux qui souhaitent créer un site Web moderne et réactif avec une conception intuitive et des fonctionnalités interactives utilisant HTML, CSS et JavaScript. C'est un excellent moyen d'améliorer vos compétences en développement front-end tout en créant une page Web visuellement attrayante et fonctionnelle.

Aperçu du projet

LeSite Web Snapest un site Web d'une seule page conçu pour présenter un produit ou un service avec une mise en page claire et professionnelle. Ce projet montre comment créer une page Web réactive et interactive qui s'affiche parfaitement sur n'importe quel appareil.

Caractéristiques

  • Conception réactive: le site Web est entièrement réactif, ce qui garantit qu'il s'affichera parfaitement sur les ordinateurs de bureau et les appareils mobiles.
  • Éléments interactifs: comprend des menus déroulants et des effets de survol pour améliorer l'interaction de l'utilisateur.
  • Esthétique moderne: conçu avec un look moderne, en utilisant des polices élégantes et des principes de conception minimalistes.

Technologies utilisées

  • HTML: fournit la structure du site Web Snap.
  • CSS: stylise le site Web pour garantir qu'il est visuellement attrayant et convivial.
  • JavaScript: ajoute de l'interactivité au site Web, comme des menus déroulants et des effets de survol.

Structure du projet

Voici un aperçu de la structure du projet :

Snap-Website/ ├── index.html ├── style.css └── script.js
Copier après la connexion
  • index.html: Contient la structure HTML du site Web Snap.
  • style.css: inclut des styles CSS pour créer un design moderne et réactif.
  • script.js: Gère les éléments interactifs comme les menus déroulants.

Installation

Pour démarrer le projet, suivez ces étapes :

  1. Cloner le dépôt:

    git clone https://github.com/abhishekgurjar-in/Snap-Website.git
    Copier après la connexion
  2. Ouvrez le répertoire du projet:

    cd Snap-Website
    Copier après la connexion
  3. Exécuter le projet:

    • Ouvrez le fichier index.html dans un navigateur Web pour afficher le site Web Snap.

Usage

  1. Ouvrez le site Webdans un navigateur Web.
  2. Explorez le contenuen interagissant avec les menus déroulants et en survolant les éléments.
  3. Affichez le design réactifen redimensionnant la fenêtre du navigateur ou en ouvrant le site Web sur différents appareils.

Explication du code

HTML

Le fichier index.html définit la structure du site Web Snap, y compris la navigation, les sections de contenu et les éléments interactifs. En voici un extrait :

     Snap    

Make
remote work

Get your team in sync, no matter your location. Streamline processes, create team rituals, and watch productivity soar.

Databiz Audiophile Meet Maker
Hero Image
Copier après la connexion

CSS

Le fichier style.css stylise le site Web Snap, le rendant attrayant et facile à utiliser. Voici quelques styles clés :

* { box-sizing: border-box; } body { font-family: Epilogue; margin: 0; padding: 0; } .container { max-width: 1440px; margin: auto; } nav { margin: 20px; width: 88%; display: flex; align-items: center; justify-content: space-between; } .logo { display: flex; align-items: center; } .logo img { width: 90px; } .header { display: flex; gap: 20px; } .login { display: flex; align-items: center; gap: 20px; } .login button { background-color: rgb(255, 255, 255); border-radius: 15px; padding-inline: 14px; padding-block: 8px; color: gray; border: 1px solid gray; cursor: pointer; } .login button:hover { color: black; } nav p { color: gray; cursor: pointer; } nav p:hover { color: black; } .box { display: flex; align-items: flex-start; justify-content: space-around; margin: 70px; } .left-box { width: 50%; } .left-box h1 { font-size: 90px; } .left-box p { font-size: 17px; } .left-box button { font-size: 22px; margin-top: 100px; padding: 12px; background-color: black; color: white; border-radius: 19px; cursor: pointer; } .left-box button:hover { background-color: white; color: black; } .right-box img { width: 50%; max-width: 480px; } .client-image { display: flex; align-items: center; justify-content: space-between; margin-top: 80px; } .feature-dropdown { position: fixed; background-color: white; width: 170px; left: 425px; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 10px; color: gray; box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.3); } .feature-dropdown p:hover { color: black; cursor: pointer; } .company-dropdown { position: fixed; width: 140px; left: 580px; background-color: white; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 10px; color: gray; box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.3); } .company-dropdown p:hover { color: black; cursor: pointer; } .footer { margin: 30px; text-align: center; } @media (max-width: 800px) { .box { flex-direction: column; align-items: center; gap: 100px; } nav { align-items: flex-start; gap: 50px; } .header { flex-direction: column; } .client-image { flex-direction: column; gap: 80px; } }
Copier après la connexion

Javascript

Le fichier script.js contient la logique des menus déroulants et des éléments interactifs. En voici un extrait :

const featuresDropdown = document.getElementsByClassName("featuresDropdown")[0]; const companyDropdown = document.getElementsByClassName("companyDropdown")[0]; const dropdown = document.getElementsByClassName("dropdown")[0]; featuresDropdown.addEventListener("mouseover", () => { const featureDiv = document.createElement('div'); featureDiv.classList.add("feature-dropdown"); featureDiv.innerHTML = ` 

Todo List

Calendar

Reminders

Planning

`; dropdown.innerHTML = ''; // Clear any previous dropdown content dropdown.appendChild(featureDiv); dropdown.style.display = 'block'; // Show the dropdown }); companyDropdown.addEventListener("mouseover", () => { const companyDiv = document.createElement('div'); companyDiv.classList.add("company-dropdown"); companyDiv.innerHTML = `

History

Our Team

Blog

`; dropdown.innerHTML = ''; // Clear any previous dropdown content dropdown.appendChild(companyDiv); dropdown.style.display = 'block'; // Show the dropdown }); // To handle mouseout to hide dropdowns featuresDropdown.addEventListener("mouseout", () => { setTimeout(() => { if (!dropdown.matches(':hover') && !featuresDropdown.matches(':hover')) { dropdown.style.display = 'none'; } }, 100); // Timeout to ensure the mouseover event on the dropdown itself is registered }); companyDropdown.addEventListener("mouseout", () => { setTimeout(() => { if (!dropdown.matches(':hover') && !companyDropdown.matches(':hover')) { dropdown.style.display = 'none'; } }, 100); // Timeout to ensure the mouseover event on the dropdown itself is registered }); dropdown.addEventListener("mouseout", () => { setTimeout(() => { if (!dropdown.matches(':hover') && !featuresDropdown.matches(':hover') && !companyDropdown.matches(':hover')) { dropdown.style.display = 'none'; } }, 100); // Timeout to ensure the mouseover event on the dropdown itself is registered }); dropdown.addEventListener("mouseover", () => { dropdown.style.display = 'block'; // Keep the dropdown visible while hovering over it });
Copier après la connexion

Démo en direct

Vous pouvez consulter la démo en direct du projet Snap Website ici.

Conclusion

Construire le site Web Snap a été une expérience d'apprentissage précieuse, me permettant d'améliorer mes compétences dans la création de pages Web réactives et interactives. Ce projet est un excellent exemple de conception et de développement de sites Web modernes, et j'espère qu'il vous inspirera pour créer vos propres sites Web réactifs. Bon codage !

Crédits

Ce projet a été développé dans le cadre de mon parcours d'apprentissage continu en développement Web.

Auteur

  • Abhishek Gurjar
    • Profil GitHub

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!