Maison  >  Article  >  interface Web  >  Créer un site Web de calendrier mensuel

Créer un site Web de calendrier mensuel

王林
王林original
2024-08-27 18:01:18475parcourir

Build a Month Calendar Website

Introduction

Bonjour les développeurs ! Je suis ravi de partager mon dernier projet : un Calendrier mensuel. Ce projet est parfait pour tous ceux qui cherchent à créer un calendrier fonctionnel et visuellement attrayant en JavaScript. Que vous souhaitiez ajouter une fonctionnalité de calendrier à un site Web ou que vous souhaitiez simplement améliorer vos compétences JavaScript, ce projet sera un ajout précieux à votre portfolio.

Aperçu du projet

Le Calendrier mensuel est une application Web qui affiche le mois en cours, mettant en évidence la date du jour et organisant avec précision les jours de la semaine. Le projet montre comment générer dynamiquement un calendrier à l'aide de JavaScript, combiné à une interface élégante et réactive construite avec HTML et CSS.

Caractéristiques

  • Affichage dynamique du mois : affiche automatiquement le mois et l'année en cours.
  • Date actuelle en surbrillance : la date du jour est mise en surbrillance pour une identification facile.
  • Mise en page précise des jours : les jours de la semaine sont correctement alignés en fonction du mois.

Technologies utilisées

  • HTML : Fournit la structure du calendrier mensuel.
  • CSS : stylise le calendrier, en s'assurant qu'il est visuellement attrayant et réactif.
  • JavaScript : Gère la logique de génération du calendrier, y compris le calcul des jours et la mise en évidence de la date actuelle.

Structure du projet

Voici un aperçu de la structure du projet :

Month-Calendar/
├── index.html
├── style.css
└── script.js
  • index.html : Contient la structure HTML du calendrier mensuel.
  • style.css : inclut des styles CSS pour créer un design moderne et réactif.
  • script.js : Gère la fonctionnalité de génération de calendrier.

Installation

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

  1. Cloner le dépôt :

    git clone https://github.com/abhishekgurjar-in/Month-Calendar.git
    
  2. Ouvrez le répertoire du projet :

    cd Month-Calendar
    
  3. Exécuter le projet :

    • Ouvrez le fichier index.html dans un navigateur Web pour afficher le calendrier mensuel.

Usage

  1. Ouvrez le site Web dans un navigateur Web.
  2. Affichez le mois en cours avec la date du jour en surbrillance.
  3. Naviguez à travers les jours pour voir la disposition pour tout le mois.

Explication du code

HTML

Le fichier index.html définit la structure du calendrier mensuel, y compris l'affichage du mois et la disposition de la grille pour les jours. En voici un extrait :

8b05045a5be5764f313ed5b9168a17e6
49099650ebdc5f3125501fa170048923
  93f0f5c25f18dab9d176bd4f6de5d30e
    7c8d9f814bcad6a1d7abe4eda5f773e5
    acd8feeb3a0ea7477b979779de32785a
    26faf3d1af674280d03ba217d87e9421
    b2386ffb911b14667cb8f0f91ea547a7Month Calendar6e916e0f7d1e588d4f442bf645aedb2f
    af75c476cdb7e6c074ca6da9b40841de
    90392ec4442ad9ff612213ec639da4832cacc6d41bbb37262a98f745aa00fbf0
  9c3bca370b5104690d9ef395f2c5f8d1
  6c04bd5ca3fcae76e30b72ad730ca86d
    4883ec0eb33c31828b7c767c806e14c7
      924ff17625d603f964501dd897c96cc6
        4a249f0d628e2318394fd9b75b4636b1Month Calendar473f0a7621bec819994bb5020d29372a
      16b28748ea4df4d9c2150843fecfba68
      6a0cba8356a55c4a6e47746d431e6421
        418883615a2e79b9926c86666863ce0d
          5f41073e18caf0aa09116baf33d01f47
            4a249f0d628e2318394fd9b75b4636b1473f0a7621bec819994bb5020d29372a
            e388a4556c0f65e1904146cc1a846bee94b3e26ee717c64999d7867364b1b4a3
          16b28748ea4df4d9c2150843fecfba68
        16b28748ea4df4d9c2150843fecfba68
        639769261d891863793f213a2da06288
          dc6dce4a544fdca2df29d5ac0ea9906bMon16b28748ea4df4d9c2150843fecfba68
          dc6dce4a544fdca2df29d5ac0ea9906bTue16b28748ea4df4d9c2150843fecfba68
          dc6dce4a544fdca2df29d5ac0ea9906bWed16b28748ea4df4d9c2150843fecfba68
          dc6dce4a544fdca2df29d5ac0ea9906bThu16b28748ea4df4d9c2150843fecfba68
          dc6dce4a544fdca2df29d5ac0ea9906bFri16b28748ea4df4d9c2150843fecfba68
          dc6dce4a544fdca2df29d5ac0ea9906bSat16b28748ea4df4d9c2150843fecfba68
          dc6dce4a544fdca2df29d5ac0ea9906bSun16b28748ea4df4d9c2150843fecfba68
        16b28748ea4df4d9c2150843fecfba68
        97a12517d2546b2575274c1d8a6e171e16b28748ea4df4d9c2150843fecfba68
      16b28748ea4df4d9c2150843fecfba68
      ffd6ba4147bda351239915f463e46e38
        e388a4556c0f65e1904146cc1a846beeMade with ❤️ by Abhishek Gurjar94b3e26ee717c64999d7867364b1b4a3
      16b28748ea4df4d9c2150843fecfba68
    16b28748ea4df4d9c2150843fecfba68
  36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e

CSS

Le fichier style.css stylise le calendrier mensuel, le rendant à la fois attrayant et réactif. Voici quelques styles clés :

* {
  margin: 0;
  padding: 0;
  font-family: sans-serif;
  box-sizing: border-box;
}

.container {
  width: 100%;
  height: 100vh;
  background-color: salmon;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.header {
  margin: 20px;
  color: white;
  text-align: center;
}

.calendar {
  background-color: black;
  color: lightgray;
  width: 450px;
  height: 520px;
  border-radius: 10px;
  box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.4);
}

.month {
  width: 100%;
  height: 120px;
  background-color: lightseagreen;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 10px 10px 0 0;
}

.month h1 {
  font-size: 30px;
  font-weight: 400;
  text-transform: uppercase;
}

.month p {
  font-size: 16px;
}

.weekdays {
  width: 100%;
  height: 50px;
  display: flex;
}

.weekdays div {
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 1px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.days {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 2px;
}

.days div {
  font-size: 14px;
  margin: 3px;
  width: 57.5px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.days div:hover:not(.empty) {
  border: 2px solid gray;
  cursor: pointer;
}

.today {
  background-color: lightseagreen;
}

.footer {
  margin-top: 70px;
  color: white;
  text-align: center;
}

Javascript

Le fichier script.js contient la logique pour générer le calendrier et mettre en évidence la date actuelle. En voici un extrait :

const monthEl = document.querySelector(".date h1");
const fullDateEl = document.querySelector(".date p");
const daysEl = document.querySelector(".days");

const monthInx = new Date().getMonth();
const lastDay = new Date(new Date().getFullYear(), monthInx + 1, 0).getDate();
const firstDay = new Date(new Date().getFullYear(), monthInx, 1).getDay() - 1;

const months = [
  "January",
  "February",
  "March",
  "April",
  "May",
  "June",
  "July",
  "August",
  "September",
  "October",
  "November",
  "December",
];

monthEl.innerText = months[monthInx];
fullDateEl.innerText = new Date().toDateString();

let days = "";

for (let i = firstDay; i > 0; i--) {
  days += `edfd5fc8d5ee204ac4dfe03b945f3c3916b28748ea4df4d9c2150843fecfba68`;
}
for (let i = 1; i 67a68beefb344083e30784f1b3a9b000${i}16b28748ea4df4d9c2150843fecfba68`;
  } else {
    days += `dc6dce4a544fdca2df29d5ac0ea9906b${i}16b28748ea4df4d9c2150843fecfba68`;
  }
}

daysEl.innerHTML = days;

Démo en direct

Vous pouvez consulter la démo en direct du projet Month Calendar ici.

Conclusion

La création du calendrier mensuel a été un projet agréable qui m'a permis de combiner mes compétences en développement front-end avec des fonctionnalités JavaScript pratiques. Cet outil est utile pour afficher les dates du calendrier sur les sites Web et peut être un excellent ajout à vos projets de développement Web. J'espère que vous le trouverez aussi utile que moi. Bon codage !

Crédits

Ce projet a été développé dans le cadre de mon parcours visant à améliorer mes compétences JavaScript et à créer des outils Web fonctionnels.

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!

Déclaration:
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