Ergebnisse erzielen html <div Klasse="Container"> <h1 class="title">Dropdown-Menü</h1> <ul> <li Klasse="Dropdown"> <a href="#" data-toggle="dropdown">Erstes Menü <i class="icon-arrow"></i></a> <ul Klasse="Dropdown-Menü"> <li><a href="#">Startseite</a></li> <li><a href="#">Über uns</a></li> <li><a href="#">Dienstleistungen</a></li> <li><a href="#">Kontakt</a></li> </ul> </li> <li Klasse="Dropdown"> <a href="#" data-toggle="dropdown">Zweites Menü <i class="icon-arrow"></i></a> <ul Klasse="Dropdown-Menü"> <li><a href="#">Startseite</a></li> <li><a href="#">Über uns</a></li> <li><a href="#">Dienstleistungen</a></li> <li><a href="#">Kontakt</a></li> </ul> </li> <li Klasse="Dropdown"> <a href="#" data-toggle="dropdown">Drittes Menü <i class="icon-arrow"></i></a> <ul Klasse="Dropdown-Menü"> <li><a href="#">Startseite</a></li> <li><a href="#">Über uns</a></li> <li><a href="#">Dienstleistungen</a></li> <li><a href="#">Kontakt</a></li> </ul> </li> </ul> <p Klasse="text-center"> Sehen Sie dasselbe Menü nur mit CSS3: <a href="https://codepen.io/pedronauck/pen/jaluz" target="_blank">https://codepen.io/pedronauck/pen/jaluz</a> </p> </div> CSS @import url("https://fonts.googleapis.com/css?family=Lato:300,400,700,900"); @import-URL (https://fonts.googleapis.com/css?family=Pacifico); Körper { Schriftfamilie: „Lato“, Helvetica, Arial; Schriftgröße: 16px; } .text-center { Textausrichtung: zentriert; } *, *:vor, *:nach { -webkit-border-sizing: Rahmenbox; -moz-border-sizing: Rahmenbox; Rahmengröße: Rahmenbox; } .container { Breite: 350px; Rand: 50px automatisch; } .container > ul { Listenstil: keiner; Polsterung: 0; Rand: 0 0 20px 0; } .Titel { Schriftfamilie: „Pacifico“; Schriftstärke: Norma; Schriftgröße: 40px; Textausrichtung: zentriert; Zeilenhöhe: 1,4; Farbe: #2980B9; } .dropdown ein { Textdekoration: keine; } .dropdown [data-toggle="dropdown"] { Position: relativ; Anzeige: Block; Farbe: weiß; Hintergrund: #2980B9; -moz-box-shadow: 0 1px 0 #409ad5 Einschub, 0 -1px 0 #20638f Einschub; -webkit-box-shadow: 0 1px 0 #409ad5 Einschub, 0 -1px 0 #20638f Einschub; Box-Shadow: 0 1px 0 #409ad5 Einschub, 0 -1px 0 #20638f Einschub; Textschatten: 0 -1px 0 rgba(0, 0, 0, 0,3); Polsterung: 10px; } .dropdown [data-toggle="dropdown"]:hover { Hintergrund: #2c89c6; } .Dropdown .Symbolpfeil { Position: absolut; Anzeige: Block; Schriftgröße: 0,7em; Farbe: #fff; oben: 14px; rechts: 10px; } .dropdown .icon-arrow.öffnen { -moz-transform:drehen(-180 Grad); -ms-transform:drehen(-180Grad); -webkit-transform: drehen(-180 Grad); transformieren: drehen (-180 Grad); -moz-Übergang: -moz-Transform 0,6 s; -o-Übergang: -o-Transformation 0,6 s; -webkit-Übergang: -webkit-Transform 0,6 s; Übergang: Transformation 0,6 s; } .dropdown .icon-arrow.schließen { -moz-transform:drehen(0Grad); -ms-transform:drehen(0Grad); -webkit-transform: drehen(0 Grad); transformieren: drehen (0 Grad); -moz-Übergang: -moz-Transform 0,6 s; -o-Übergang: -o-Transformation 0,6 s; -webkit-Übergang: -webkit-Transform 0,6 s; Übergang: Transformation 0,6 s; } .dropdown .icon-arrow:vor { Inhalt: „\25BC“; } .dropdown .dropdown-menü { maximale Höhe: 0; Überlauf: versteckt; Listenstil: keiner; Polsterung: 0; Rand: 0; } .dropdown .dropdown-menü li { Polsterung: 0; } .dropdown .dropdown-menü li a { Anzeige: Block; Farbe: #6f6f6f; Hintergrund: #EEE; -moz-box-shadow: 0 1px 0 weißer Einschub, 0 -1px 0 #d5d5d5 Einschub; -webkit-box-shadow: 0 1px 0 weißer Einschub, 0 -1px 0 #d5d5d5 Einschub; Box-Shadow: 0 1px 0 weißer Einschub, 0 -1px 0 #d5d5d5 Einschub; Textschatten: 0 -1px 0 rgba(255, 255, 255, 0,3); Polsterung: 10px 10px; } .dropdown .dropdown-menu li a:hover { Hintergrund: #f6f6f6; } .dropdown .anzeigen, .dropdown .ausblenden { -moz-transform-origin: 50 % 0 %; -ms-transform-origin: 50 % 0 %; -webkit-transform-origin: 50 % 0 %; Transform-Ursprung: 50 % 0 %; } .dropdown .anzeigen { Anzeige: Block; maximale Höhe: 9999px; -moz-transform: SkalaY(1); -ms-transform: SkalaY(1); -webkit-transform: MaßstabY(1); transformieren: scaleY(1); Animation: Animation anzeigen, 0,5 s, Ein- und Ausblenden; -moz-animation: ShowAnimation 0,5 s, Easy-In-Out; -webkit-animation: showAnimation 0,5 s, Ein- und Ausschalten; -moz-transition: max. Höhe 1 s, leichtes Ein- und Aussteigen; -o-Übergang: max. Höhe 1 s, leichtes Ein- und Aussteigen; -webkit-transition: max. Höhe 1 Sek., Ein-/Ausstieg erleichtert; Übergang: max. Höhe 1 s, leichtes Ein- und Aussteigen; } .dropdown .ausblenden { maximale Höhe: 0; -moz-transform: SkalaY(0); -ms-transform: SkalaY(0); -webkit-transform: MaßstabY(0); transformieren: scaleY(0); Animation: HideAnimation 0,4 s Ausblendung; -moz-animation: hideAnimation 0,4 s Ausstieg; -webkit-animation: hideAnimation 0,4 s Ausstieg; -moz-transition: maximale Höhe, 0,6 s Ausstieg; -o-Übergang: maximale Höhe, 0,6 s, Ausstieg; -webkit-transition: maximale Höhe, 0,6 s Auslaufzeit; Übergang: max. Höhe 0,6 s, Auslaufen; } @keyframes showAnimation { 0% { -moz-transform: MaßstabY(0,1); -ms-transform: MaßstabY(0,1); -webkit-transform: MaßstabY(0,1); transformieren: scaleY(0,1); } 40 % { -moz-transform: MaßstabY(1,04); -ms-transform: MaßstabY(1,04); -webkit-transform: MaßstabY(1,04); transformieren: scaleY(1,04); } 60 % { -moz-transform: MaßstabY(0,98); -ms-transform: MaßstabY(0,98); -webkit-transform: MaßstabY(0,98); transformieren: scaleY(0,98); } 80 % { -moz-transform: MaßstabY(1,04); -ms-transform: MaßstabY(1,04); -webkit-transform: MaßstabY(1,04); transformieren: scaleY(1,04); } 100 % { -moz-transform: MaßstabY(0,98); -ms-transform: MaßstabY(0,98); -webkit-transform: MaßstabY(0,98); transformieren: scaleY(0,98); } 80 % { -moz-transform: MaßstabY(1,02); -ms-transform: MaßstabY(1,02); -webkit-transform: MaßstabY(1,02); transformieren: scaleY(1,02); } 100 % { -moz-transform: SkalaY(1); -ms-transform: SkalaY(1); -webkit-transform: MaßstabY(1); transformieren: scaleY(1); } } @-moz-keyframes showAnimation { 0% { -moz-transform: MaßstabY(0,1); -ms-transform: MaßstabY(0,1); -webkit-transform: MaßstabY(0,1); transformieren: scaleY(0,1); } 40 % { -moz-transform: MaßstabY(1,04); -ms-transform: MaßstabY(1,04); -webkit-transform: MaßstabY(1,04); transformieren: scaleY(1,04); } 60 % { -moz-transform: MaßstabY(0,98); -ms-transform: MaßstabY(0,98); -webkit-transform: MaßstabY(0,98); transformieren: scaleY(0,98); } 80 % { -moz-transform: MaßstabY(1,04); -ms-transform: MaßstabY(1,04); -webkit-transform: MaßstabY(1,04); transformieren: scaleY(1,04); } 100 % { -moz-transform: MaßstabY(0,98); -ms-transform: MaßstabY(0,98); -webkit-transform: MaßstabY(0,98); transformieren: scaleY(0,98); } 80 % { -moz-transform: MaßstabY(1,02); -ms-transform: MaßstabY(1,02); -webkit-transform: MaßstabY(1,02); transformieren: scaleY(1,02); } 100 % { -moz-transform: SkalaY(1); -ms-transform: SkalaY(1); -webkit-transform: MaßstabY(1); transformieren: scaleY(1); } } @-webkit-keyframes showAnimation { 0% { -moz-transform: MaßstabY(0,1); -ms-transform: MaßstabY(0,1); -webkit-transform: MaßstabY(0,1); transformieren: scaleY(0,1); } 40 % { -moz-transform: MaßstabY(1,04); -ms-transform: MaßstabY(1,04); -webkit-transform: MaßstabY(1,04); transformieren: scaleY(1,04); } 60 % { -moz-transform: MaßstabY(0,98); -ms-transform: MaßstabY(0,98); -webkit-transform: MaßstabY(0,98); transformieren: scaleY(0,98); } 80 % { -moz-transform: MaßstabY(1,04); -ms-transform: MaßstabY(1,04); -webkit-transform: MaßstabY(1,04); transformieren: scaleY(1,04); } 100 % { -moz-transform: MaßstabY(0,98); -ms-transform: MaßstabY(0,98); -webkit-transform: MaßstabY(0,98); transformieren: scaleY(0,98); } 80 % { -moz-transform: MaßstabY(1,02); -ms-transform: MaßstabY(1,02); -webkit-transform: MaßstabY(1,02); transformieren: scaleY(1,02); } 100 % { -moz-transform: SkalaY(1); -ms-transform: SkalaY(1); -webkit-transform: MaßstabY(1); transformieren: scaleY(1); } } @keyframes hideAnimation { 0% { -moz-transform: SkalaY(1); -ms-transform: SkalaY(1); -webkit-transform: MaßstabY(1); transformieren: scaleY(1); } 60 % { -moz-transform: MaßstabY(0,98); -ms-transform: MaßstabY(0,98); -webkit-transform: MaßstabY(0,98); transformieren: scaleY(0,98); } 80 % { -moz-transform: MaßstabY(1,02); -ms-transform: MaßstabY(1,02); -webkit-transform: MaßstabY(1,02); transformieren: scaleY(1,02); } 100 % { -moz-transform: SkalaY(0); -ms-transform: SkalaY(0); -webkit-transform: MaßstabY(0); transformieren: scaleY(0); } } @-moz-keyframes hideAnimation { 0% { -moz-transform: SkalaY(1); -ms-transform: SkalaY(1); -webkit-transform: MaßstabY(1); transformieren: scaleY(1); } 60 % { -moz-transform: MaßstabY(0,98); -ms-transform: MaßstabY(0,98); -webkit-transform: MaßstabY(0,98); transformieren: scaleY(0,98); } 80 % { -moz-transform: MaßstabY(1,02); -ms-transform: MaßstabY(1,02); -webkit-transform: MaßstabY(1,02); transformieren: scaleY(1,02); } 100 % { -moz-transform: SkalaY(0); -ms-transform: SkalaY(0); -webkit-transform: MaßstabY(0); transformieren: scaleY(0); } } @-webkit-keyframes hideAnimation { 0% { -moz-transform: SkalaY(1); -ms-transform: SkalaY(1); -webkit-transform: MaßstabY(1); transformieren: scaleY(1); } 60 % { -moz-transform: MaßstabY(0,98); -ms-transform: MaßstabY(0,98); -webkit-transform: MaßstabY(0,98); transformieren: scaleY(0,98); } 80 % { -moz-transform: MaßstabY(1,02); -ms-transform: MaßstabY(1,02); -webkit-transform: MaßstabY(1,02); transformieren: scaleY(1,02); } 100 % { -moz-transform: SkalaY(0); -ms-transform: SkalaY(0); -webkit-transform: MaßstabY(0); transformieren: scaleY(0); } } js // Dropdown-Menü var dropdown = document.querySelectorAll('.dropdown'); var dropdownArray = Array.prototype.slice.call(dropdown,0); dropdownArray.forEach(Funktion(el){ var button = el.querySelector('a[data-toggle="dropdown"]'), Menü = el.querySelector('.dropdown-menu'), Pfeil = Schaltfläche.Abfrageselektor('i.icon-arrow'); button.onclick = Funktion(Ereignis) { wenn(!menu.hasClass('anzeigen')) { menu.classList.add('anzeigen'); menu.classList.remove('ausblenden'); arrow.classList.add('öffnen'); arrow.classList.remove('schließen'); event.preventDefault(); } anders { menu.classList.remove('anzeigen'); menu.classList.add('ausblenden'); arrow.classList.remove('öffnen'); Pfeil.classList.add('schließen'); event.preventDefault(); } }; }) Element.prototype.hasClass = Funktion(Klassenname) { returniere dies.className && neuer RegExp("(^|\\s)" + className + "(\\s|$)").test(dieses.className); }; Oben ist der detaillierte Inhalt des Dropdown-Menüs, das mit HTML+CSS3+JS implementiert wurde. Weitere Informationen zum Dropdown-Menü mit HTML+CSS3+JS finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! |
<<: Detaillierte Erklärung der HTML-Download-Funktion
>>: CSS-Stil zurücksetzen und löschen (damit verschiedene Browser den gleichen Effekt anzeigen)
Inhaltsverzeichnis 【Allgemeine Befehle】 [Zusammen...
Detaillierte Erklärung des Docker-Tags Die Verwen...
Problembeschreibung: Nachdem das Front-End Daten ...
Dynamisches Implementieren eines einfachen sekund...
Inhaltsverzeichnis In JavaScript gibt es mehrere ...
Inhaltsverzeichnis 1. Problemhintergrund 2. Welch...
Inhaltsverzeichnis Überblick Installieren Sie Gul...
Der Standardanforderungsheader des http1.1-Protok...
Hier nehmen wir den Jenkins-Container als Beispie...
In diesem Artikel werden hauptsächlich kreisförmi...
Ich werde die Installation von MySQL unter Window...
animation-name Animationsname, kann mehrere Werte...
Was ich heute teilen möchte, ist die Verwendung v...
Neues Projekt starten Dieser Artikel zeichnet hau...
Es wird in Form von WeChat-Komponenten bereitgest...