Inhaltsverzeichnis
This Side Navigation Menu Looks Good!
Fazit
Heim CMS-Tutorial WordDrücken Sie Erstellen Sie ein verschiebbares seitliches Navigationsmenü im responsiven Design

Erstellen Sie ein verschiebbares seitliches Navigationsmenü im responsiven Design

Aug 29, 2023 am 09:01 AM

Erstellen Sie ein verschiebbares seitliches Navigationsmenü im responsiven Design

In diesem Tutorial erstellen Sie mithilfe von JavaScript und CSS ein erweiterbares Seitennavigationsmenü. Das Endprodukt ist unten abgebildet:

1. Marke erstellen

Fügen wir zunächst etwas Markup zum Seitenmenü hinzu:

<div id="sideNavigation" class="sidenav">
  <a href="#" class="close-btn">&times;</a>
  <a href="#">About</a>
  <a href="#">Features</a>
  <a href="#">Contact Us</a>
</div>
 
<nav class="topnav">
  <a href="#" class="ham-icon">
    <svg width="30" height="30" id="icoOpen">
        <path d="M0,5 30,5" stroke="#000" stroke-width="5"/>
        <path d="M0,14 30,14" stroke="#000" stroke-width="5"/>
        <path d="M0,23 30,23" stroke="#000" stroke-width="5"/>
    </svg>
  </a>
</nav>
 
<section id="main">
  <h1 id="This-Side-Navigation-Menu-Looks-Good">This Side Navigation Menu Looks Good!</h1>
  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</section>
Nach dem Login kopieren

Hier können Sie sehen, dass wir die eigentliche Navigation in der oberen Leiste mithilfe des Klassentags sidenav 创建了一个侧边菜单 div 。接下来,我们通过 <nav> hinzugefügt haben und SVG für das Seitenmenüsymbol verwendet haben.

Denken Sie daran, den gesamten Inhalt Ihrer Website in einen div id="main" Container zu legen, damit er nach rechts verschoben wird.

2. JavaScript-Code schreiben

Als nächstes fügen wir JavaScript hinzu, das die ham-icon-Klasse verwendet, um auf Klickereignisse auf dem Hamburger-Symbol zu warten, sowie auf die Schaltfläche „Schließen“, die erscheint, nachdem das seitliche Navigationsmenü auf den Bildschirm gleitet.

document.querySelector("a.ham-icon").addEventListener("click", function(event){
  document.getElementById("sideNavigation").style.width = "250px";
  document.getElementById("main").style.marginLeft = "250px";
});

document.querySelector("a.close-btn").addEventListener("click", function(event){
  document.getElementById("sideNavigation").style.width = "0";
  document.getElementById("main").style.marginLeft = "0";
});
Nach dem Login kopieren

Durch Klicken auf das Hamburger-Symbol sollte die Seitennavigation angezeigt werden. Dazu stellen wir die Breite der Navigation auf den linken Rand von 250px,同时向主要网站内容添加 250px ein.

Durch Klicken auf die Schaltfläche „Schließen“ sollte die Seitennavigation ausgeblendet werden. Dazu ändern wir die Breite der Navigation wieder auf 0 und setzen gleichzeitig den linken Rand des Hauptinhalts der Website auf 0.

3. CSS-Stile verwenden

Schließlich müssen wir etwas CSS verwenden, um das Seitenmenü und die Links auf der Seite zu gestalten. CSS platziert alle Webseitenelemente genau dort, wo wir sie haben möchten. Wir werden auch einige einfache Animationen mithilfe des Attributs transition anwenden. Schauen wir uns CSS Stück für Stück an.

.sidenav {
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: #111;
  overflow-x: hidden;
  padding-top: 4rem;
  transition: 0.4s cubic-bezier(0.18, 0.89, 0.32, 1.28);
  font-family: "Bebas Neue";
}

.sidenav a {
  padding: 0.5rem 1rem;
  text-decoration: none;
  color: #bdbdbd;
  display: block;
  transition: 0.4s;
  white-space: nowrap;
  font-size: 2rem;
}

.sidenav a:hover {
  color: white;
  background: #9e9e9e;
}
Nach dem Login kopieren

Wenn wir height设置为100%,并将其初始width设置为0以使其隐藏。但是,只有当 overflow-x 属性的值设置为 hidden die Seitennavigation verwenden, bleibt der Inhalt der Seitennavigation verborgen.

Die Übergangseigenschaft stellt sicher, dass Änderungen in der Breite der Seitennavigation nicht plötzlich erfolgen, und die Beschleunigungsfunktion macht sie etwas elastisch.

Für Links innerhalb der Seitennavigation werden wir white-space 属性的值设置为 nowrap damit der Menütext nicht über mehrere Zeilen hinausgeht.

.sidenav .close-btn {
  position: absolute;
  top: -1rem;
  right: 1rem;
  font-size: 5rem;
}

.sidenav .close-btn:hover {
  background: initial;
  transform: scale(1.2);
}
Nach dem Login kopieren

Der obige CSS-Stil trennt unseren Schließen-Button von den anderen Links in der Seitennavigation. Wir haben eine absolute Positionierung auf die Schließen-Schaltfläche angewendet und verhindert, dass ihr Hintergrund beim Schweben hellgrau wird. Außerdem vergrößert es sich um 20 %, wenn der Benutzer mit der Maus darüber fährt.

Das folgende CSS stellt nun sicher, dass sich die Position des Hauptinhalts synchron mit dem Navigationsmenü bewegt, indem es dieselbe Übergangsdauer und dieselbe Beschleunigungsfunktion verwendet. Durch die Platzierung von overflow-x 属性的值设置为 hidden wird sichergestellt, dass beim Verschieben des Inhalts keine horizontalen Bildlaufleisten angezeigt werden.

#main {
  transition: margin-left 0.4s cubic-bezier(0.18, 0.89, 0.32, 1.28);
  padding: 20px;
  width: 100%;
}

body {
 overflow-x: hidden; 
}
Nach dem Login kopieren

Mit Hilfe des folgenden CSS können wir dem Hamburger-Symbol auch eine kleine Drehbewegung hinzufügen. Es dreht das Hamburger-Symbol in 0,5 Sekunden um 180 Grad.

a svg {
  transition: all 0.5s ease;
}
a svg:hover {
  transform: rotate(180deg);
}
Nach dem Login kopieren

Abschließend machen wir das Navigationsmenü responsiv, indem wir den Abstand und die Größe der Links mithilfe des folgenden CSS anpassen. Dadurch wird sichergestellt, dass das Menü auf Bildschirmen mit weniger vertikalem Platz nicht den Rahmen überschreitet.

@media screen and (max-height: 480px) {
  .sidenav {
    padding-top: 3rem;
  }
  .sidenav a {
    font-size: 1.5rem;
  }
}
Nach dem Login kopieren

An diesem Punkt sollte Ihr Navigationsmenü wie in der folgenden CodePen-Demo aussehen.

4. Diashow entfernen

Damit das Menü ohne Folienanimation angezeigt wird, ändern Sie einfach die CSS-Eigenschaft transition wie in der Kurzform unten dargestellt:

.sidenav {
    transition: 0s; 
}

#main {
    transition: margin-left 0s;
}
Nach dem Login kopieren

Dadurch werden die Änderungen sofort angezeigt, da in transition 中没有指定延迟。我们使用的默认值是 0.5s keine Verzögerung angegeben ist. Der von uns verwendete Standardwert ist 0,5s.

Fazit

Das Erstellen eines Seitenmenüs erfordert nur wenige Codezeilen und erfordert nicht viele Ressourcen. Sorgen Sie dafür, dass Ihr Code auf unterschiedliche Bildschirmauflösungen von Geräten reagiert, indem Sie Ihr CSS ändern, indem Sie Medienabfragen für Ihre spezifischen Fälle hinzufügen.

Um noch einen Schritt weiter zu gehen, möchten Sie vielleicht ein CSS-Framework wie Bootstrap oder Bulma verwenden, um Ihr Menü zu gestalten.

Dieser Artikel wurde mit einem Beitrag von Monty Shokeen aktualisiert. Monty ist ein Full-Stack-Entwickler, der auch gerne Tutorials schreibt und neue JavaScript-Bibliotheken erlernt.

Das obige ist der detaillierte Inhalt vonErstellen Sie ein verschiebbares seitliches Navigationsmenü im responsiven Design. 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

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.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

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)

Ist WordPress für Anfänger leicht? Ist WordPress für Anfänger leicht? Apr 03, 2025 am 12:02 AM

WordPress ist für Anfänger leicht zu beginnen. 1. Nach dem Anmeldung im Hintergrund ist die Benutzeroberfläche intuitiv und das einfache Dashboard bietet alle erforderlichen Funktionslinks. 2. Grundlegende Vorgänge umfassen das Erstellen und Bearbeiten von Inhalten. Der Wysiwyg -Editor vereinfacht die Erstellung von Inhalten. 3. Anfänger können die Website-Funktionen durch Plug-Ins und Themen erweitern, und die Lernkurve existiert, kann aber durch das Üben gemeistert werden.

Wofür ist die WordPress gut? Wofür ist die WordPress gut? Apr 07, 2025 am 12:06 AM

WordPressIsGoodforenualywebProjectDuetoitsverseSatilityasacms.itexcelsin: 1) Benutzerfreundlichkeit, erlaubt Easywebsitesetup; 2) Flexibilität und Kustomisierung mit

Kann ich WordPress in 3 Tagen lernen? Kann ich WordPress in 3 Tagen lernen? Apr 09, 2025 am 12:16 AM

Kann WordPress innerhalb von drei Tagen lernen. 1. Master Basic-Kenntnisse wie Themen, Plug-Ins usw. 2. Verstehen Sie die Kernfunktionen, einschließlich Installations- und Arbeitsprinzipien. 3. Lernen Sie die grundlegende und erweiterte Verwendung anhand von Beispielen. 4. Verstehen Sie Debugging -Techniken und Vorschläge zur Leistungsoptimierung.

Soll ich Wix oder WordPress verwenden? Soll ich Wix oder WordPress verwenden? Apr 06, 2025 am 12:11 AM

Wix ist für Benutzer geeignet, die keine Programmiererfahrung haben, und WordPress ist für Benutzer geeignet, die mehr Kontroll- und Erweiterungsfunktionen wünschen. 1) Wix bietet Drag-and-Drop-Editoren und reichhaltige Vorlagen und erleichtert es, eine Website schnell zu erstellen. 2) Als Open-Source-CMS verfügt WordPress über eine riesige Community- und Plug-in-Ökosystem, die eine eingehende Anpassung und Erweiterung unterstützt.

Wie viel kostet WordPress? Wie viel kostet WordPress? Apr 05, 2025 am 12:13 AM

WordPress selbst ist kostenlos, kostet jedoch zusätzlich: 1. WordPress.com bietet ein Paket von kostenlos bis bezahlt, wobei die Preise zwischen ein paar Dollar pro Monat bis zu Dutzenden von Dollar reichen. 2. 3. Die meisten Plug-Ins und Themen sind kostenlos, und der bezahlte Preis liegt zwischen Dutzenden und Hunderten von Dollar. Durch die Auswahl des richtigen Hosting-Dienstes, die Verwendung von Plug-Ins und Themen und regelmäßige Aufrechterhaltung und Optimierung können die Kosten von WordPress effektiv gesteuert und optimiert werden.

Warum sollte jemand WordPress verwenden? Warum sollte jemand WordPress verwenden? Apr 02, 2025 pm 02:57 PM

Die Leute verwenden WordPress wegen ihrer Kraft und Flexibilität. 1) WordPress ist ein Open -Source -CMS mit einer starken Benutzerfreundlichkeit und Skalierbarkeit, die für verschiedene Website -Anforderungen geeignet ist. 2) Es hat reichhaltige Themen und Plugins, ein riesiges Ökosystem und eine starke Unterstützung der Gemeinschaft. 3) Das Arbeitsprinzip von WordPress basiert auf Themen, Plug-Ins und Kernfunktionen und verwendet PHP und MySQL, um Daten zu verarbeiten und die Leistungsoptimierung zu unterstützen.

Ist WordPress ein CMS? Ist WordPress ein CMS? Apr 08, 2025 am 12:02 AM

WordPress ist ein Content Management System (CMS). Es bietet Content Management, Benutzerverwaltung, Themen und Plug-in-Funktionen, um die Erstellung und Verwaltung von Website-Inhalten zu unterstützen. Das Arbeitsprinzip umfasst Datenbankverwaltung, Vorlagensysteme und Plug-in-Architektur, die für eine Vielzahl von Anforderungen von Blogs bis hin zu Unternehmenswebsites geeignet sind.

Ist WordPress noch kostenlos? Ist WordPress noch kostenlos? Apr 04, 2025 am 12:06 AM

Die Kernversion von WordPress ist kostenlos, aber andere Gebühren können während der Verwendung anfallen. 1. Domainnamen und Hosting -Dienste erfordern eine Zahlung. 2. können fortgeschrittene Themen und Plug-Ins aufgeladen werden. 3.. Professionelle Dienstleistungen und fortschrittliche Funktionen können berechnet werden.

See all articles