Heim Web-Frontend CSS-Tutorial Erstellen Sie eine Monatskalender-Website

Erstellen Sie eine Monatskalender-Website

Aug 27, 2024 pm 06:01 PM

Build a Month Calendar Website

Einführung

Hallo Entwickler! Ich freue mich, mein neuestes Projekt vorzustellen: einen Monatskalender. Dieses Projekt ist perfekt für alle, die einen funktionalen und optisch ansprechenden Kalender in JavaScript erstellen möchten. Egal, ob Sie daran interessiert sind, einer Website eine Kalenderfunktion hinzuzufügen oder einfach nur Ihre JavaScript-Kenntnisse verbessern möchten, dieses Projekt wird eine wertvolle Ergänzung Ihres Portfolios sein.

Projektübersicht

Der Monatskalender ist eine webbasierte Anwendung, die den aktuellen Monat anzeigt, das heutige Datum hervorhebt und die Wochentage genau anordnet. Das Projekt zeigt, wie man mithilfe von JavaScript dynamisch einen Kalender generiert, kombiniert mit einer schlanken und reaktionsfähigen Oberfläche, die mit HTML und CSS erstellt wurde.

Merkmale

  • Dynamische Monatsanzeige: Zeigt automatisch den aktuellen Monat und das aktuelle Jahr an.
  • Hervorgehobenes aktuelles Datum: Das heutige Datum ist zur leichteren Identifizierung hervorgehoben.
  • Genaues Tageslayout: Die Wochentage werden entsprechend dem Monat korrekt ausgerichtet.

Verwendete Technologien

  • HTML: Stellt die Struktur für den Monatskalender bereit.
  • CSS: Gestaltet den Kalender und stellt sicher, dass er optisch ansprechend und reaktionsfähig ist.
  • JavaScript: Verwaltet die Logik zum Generieren des Kalenders, einschließlich der Berechnung der Tage und der Hervorhebung des aktuellen Datums.

Projektstruktur

Hier ein Überblick über die Projektstruktur:

Month-Calendar/
├── index.html
├── style.css
└── script.js
  • index.html: Enthält die HTML-Struktur für den Monatskalender.
  • style.css: Enthält CSS-Stile, um ein modernes und ansprechendes Design zu erstellen.
  • script.js: Verwaltet die Kalendergenerierungsfunktion.

Installation

Um mit dem Projekt zu beginnen, befolgen Sie diese Schritte:

  1. Klonen Sie das Repository:

    git clone https://github.com/abhishekgurjar-in/Month-Calendar.git
    
  2. Öffnen Sie das Projektverzeichnis:

    cd Month-Calendar
    
  3. Führen Sie das Projekt aus:

    • Öffnen Sie die Datei index.html in einem Webbrowser, um den Monatskalender anzuzeigen.

Verwendung

  1. Öffnen Sie die Website in einem Webbrowser.
  2. Den aktuellen Monat anzeigenmit hervorgehobenem heutigen Datum.
  3. Navigieren Sie durch die Tage, um das Layout für den gesamten Monat anzuzeigen.

Code-Erklärung

HTML

Die Datei index.html definiert die Struktur des Monatskalenders, einschließlich der Monatsanzeige und des Rasterlayouts für die Tage. Hier ist ein Ausschnitt:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Month Calendar</title>
    <link rel="stylesheet" href="style.css" />
    <script src="script.js" defer></script>
  </head>
  <body>
    <div class="container">
      <div class="header">
        <h1>Month Calendar</h1>
      </div>
      <div class="calendar">
        <div class="month">
          <div class="date">
            <h1></h1>
            <p></p>
          </div>
        </div>
        <div class="weekdays">
          <div>Mon</div>
          <div>Tue</div>
          <div>Wed</div>
          <div>Thu</div>
          <div>Fri</div>
          <div>Sat</div>
          <div>Sun</div>
        </div>
        <div class="days"></div>
      </div>
      <div class="footer">
        <p>Made with ❤️ by Abhishek Gurjar</p>
      </div>
    </div>
  </body>
</html>

CSS

Die style.css-Datei gestaltet den Monatskalender und macht ihn sowohl attraktiv als auch reaktionsfähig. Nachfolgend sind einige wichtige Stile aufgeführt:

* {
  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

Die Datei script.js enthält die Logik zum Generieren des Kalenders und zum Hervorheben des aktuellen Datums. Hier ist ein Ausschnitt:

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 += `<div class="empty"></div>`;
}
for (let i = 1; i <= lastDay; i++) {
  if (i === new Date().getDate()) {
    days += `<div class="today">${i}</div>`;
  } else {
    days += `<div>${i}</div>`;
  }
}

daysEl.innerHTML = days;

Live-Demo

Sie können sich hier die Live-Demo des Monatskalenderprojekts ansehen.

Abschluss

Die Erstellung des Monatskalenders war ein unterhaltsames Projekt, das es mir ermöglichte, meine Frontend-Entwicklungsfähigkeiten mit praktischen JavaScript-Funktionen zu kombinieren. Dieses Tool eignet sich zum Anzeigen von Kalenderdaten auf Websites und kann eine großartige Ergänzung für Ihre Webentwicklungsprojekte sein. Ich hoffe, Sie finden es genauso hilfreich wie ich. Viel Spaß beim Codieren!

Credits

Dieses Projekt wurde als Teil meiner Reise entwickelt, um meine JavaScript-Kenntnisse zu verbessern und funktionale Web-Tools zu erstellen.

Autor

  • Abhishek Gurjar
    • GitHub-Profil

Das obige ist der detaillierte Inhalt vonErstellen Sie eine Monatskalender-Website. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie benutze ich das CSS-Backdrop-Filter-Eigenschaft? Wie benutze ich das CSS-Backdrop-Filter-Eigenschaft? Aug 02, 2025 pm 12:11 PM

Backdrop-Filter wird verwendet, um visuelle Effekte auf den Inhalt der Elemente anzuwenden. 1. Verwenden Sie Backdrop-Filter: Blur (10px) und andere Syntax, um den frostierten Glasffekt zu erzielen. 2. unterstützt mehrere Filterfunktionen wie Unschärfe, Helligkeit, Kontrast usw. und kann überlagert werden. 3. Es wird häufig in der Glaskartendesign verwendet, und es ist notwendig, sicherzustellen, dass sich die Elemente mit dem Hintergrund überschneiden. 4. Moderne Browser haben eine gute Unterstützung, und @Supports können verwendet werden, um Downgrade -Lösungen bereitzustellen. 5. Vermeiden Sie übermäßige Unschärfewerte und häufiges Neuzuziehen, um die Leistung zu optimieren. Dieses Attribut wirkt sich nur aus, wenn sich hinter den Elementen Inhalte befinden.

So verwenden Sie VW- und VH -Einheiten in CSS So verwenden Sie VW- und VH -Einheiten in CSS Aug 07, 2025 pm 11:44 PM

VW- und VH -Einheiten erreichen reaktionsschnelles Design, indem sie Elementgrößen mit Ansichtsfenster und Höhe in Verbindung bringen. 1 VW entspricht 1% der Ansichtsfensterbreite, und 1 VH entspricht 1% der Ansichtsfensterhöhe; häufig im Vollbildbereich, reaktionsschnellen Schriftarten und elastischen Abstand verwendet; 1. Verwenden Sie im Vollbildbereich 100VH oder besser 100DVH, um den Einfluss der Mobile Browser -Adressleiste zu vermeiden. 2. Responsive Schriftarten können mit 5 VW begrenzt und mit einer Klemme (1,5REM, 3VW, 3REM) in Kombination der minimalen und maximalen Größe begrenzt werden. 3. Elastischer Abstand wie Breite: 80VW, Rand: 5VHAUTO, Polsterung: 2VH3VW, kann das Layout anpassungsfähig machen; Achten Sie auf Kompatibilität, Zugänglichkeit und Inhaltskonflikte für mobile Geräte. Es wird empfohlen, zuerst DVH zu verwenden.

Was ist die CSS-Aspekt-Verhältnis-Eigenschaft und wie kann ich sie verwenden? Was ist die CSS-Aspekt-Verhältnis-Eigenschaft und wie kann ich sie verwenden? Aug 04, 2025 pm 04:38 PM

Thespect-ratiocsSpropertydefinästhespen-to-hweigthtratioofanelemente, sicherzustellen, dass die Verbreitung von Verantwortung durchgesetzt wird

Wie benutze ich die CSS: leere Pseudoklasse? Wie benutze ich die CSS: leere Pseudoklasse? Aug 05, 2025 am 09:48 AM

Die: Leerepseudo-KlasseSelectSselementsWithnochildrenorContent, einschließlich Spacesorcomponenten, SoonlyTryEmptyElementslikematchit; 1.itcanhideemptyContainersByusing: leer {display: none;} tocleanuPlayouts; 2.itallowsaddingPlaceLylingsSylingvise :::.

Wie erstelle ich eine springende Animation mit CSS? Wie erstelle ich eine springende Animation mit CSS? Aug 02, 2025 am 05:44 AM

Definieren Sie@keyframesBounceWith0%, 100%Attranslatey (0) und 50%Attranslatey (-20px) TocreateabasicBounce.2.ApplytheanimationToanelementusingAnimimation: Bounce0.6Sease-In-Outinfinfinitmooth, ContinuousMotion.3.Forrealism, verwendet@keyFramesrealist

So erstellen Sie eine vertikale Linie mit CSS So erstellen Sie eine vertikale Linie mit CSS Aug 11, 2025 pm 12:49 PM

Verwenden Sie einen DIV mit Rand, um schnell vertikale Linien zu erstellen und Stile und Höhen zu definieren, indem Sie randlinks und Höhe einstellen. 2. Verwendung :: vor oder :: Nach Pseudoelementen, um vertikale Linien ohne zusätzliche HTML-Tags hinzuzufügen, die für die dekorative Trennung geeignet sind; 3. In Flexbox -Layout können adaptive vertikale Trennwände zwischen elastischen Behältern erreicht werden, indem die Breite und die Hintergrundfarbe der Trennklasse festgelegt werden. 4. Fügen Sie in CSSGrid vertikale Linien als unabhängige Spalten (z. B. Autowidth -Spalten) in das Gitterlayout ein, das für reaktionsschnelles Design geeignet ist. Die am besten geeignete Methode sollte gemäß dem spezifischen Layout ausgewählt werden, um sicherzustellen, dass die Struktur einfach und leicht zu warten ist.

Was sind CSS-Pseudoklassen und wie man sie benutzt? Was sind CSS-Pseudoklassen und wie man sie benutzt? Aug 06, 2025 pm 01:06 PM

Die CSS-Pseudo-Klasse ist ein Schlüsselwort, mit dem der spezielle Zustand eines Elements definiert wird. Es kann dynamisch Stile anwenden, basierend auf Benutzerinteraktion oder Dokumentenort. 1.: Hover wird ausgelöst, wenn die Maus schwebt, z. B. die Taste: HOVER ändert die Knopffarbe. 2.: Fokus wirkt sich in Wirksamkeit, wenn das Element den Fokus erhält und die Zugänglichkeit verbessert. 3.: nt-child () wählt Elemente nach Position aus und unterstützt ungerade, sogar oder Formeln wie 2n 1; 4.: Erstkind und: Last-Kind Wählen Sie die ersten bzw. letzten Kinderelemente aus; 5.:Not () schließt Elemente aus, die den angegebenen Bedingungen entsprechen; 6.: Besuchen und: Link -Set -Stile basierend auf dem Linkzugriffsstatus, aber: Besucht wird durch Privatsphäre eingeschränkt.

Wie erstelle ich ein CSS-Akkordeon-Menü? Wie erstelle ich ein CSS-Akkordeon-Menü? Aug 03, 2025 pm 01:48 PM

Verwenden Sie versteckte Kontrollkästchen und CSSs: Überprüfte Pseudoklasse in Kombination mit benachbarten Geschwister-Selektoren (), um die Inhaltsanzeige zu steuern. 2. Die HTML -Struktur enthält Eingabe-, Beschriftungs- und Inhaltsdiv für jedes zusammengebrochene Element. 3.. Smooth Expansion/Collapse-Animationen durch Einstellen von MAX-Height-Übergang; V. 5. Verwenden Sie Radiotypen, um den Einzelöffnungsmodus zu implementieren, während das Kontrollkästchen mehrere Öffnungen ermöglicht. Dies ist eine interaktive faltbare Menüimplementierung, die kein JavaScript erfordert und mit modernen Browsern kompatibel ist.

See all articles