Πώς να δημιουργήσετε: Αναπτυσσόμενα με κλικ下拉菜单
- Προηγούμενη σελίδα μενού αναδυόμενα που αναρτάται
- Προηγούμενη σελίδα μενού αναδυόμενα με κατηγορίες
Μάθετε πώς να δημιουργήσετε αναπτυσσόμενα με κλικ下拉菜单 χρησιμοποιώντας CSS και JavaScript.
Αναπτυσσόμενη με κλικ下拉菜单
Η αναπτυσσόμενη με κλικ下拉菜单 είναι ένα ανακτινευόμενο μενού που επιτρέπει στον χρήστη να επιλέξει μια τιμή από μια προκαθορισμένη λίστα:
Δημιουργία αναπτυσσόμενης με κλικ下拉菜单
Δημιουργία μιας αναπτυσσόμενης με κλικ下拉菜单.
Βήμα 1 - Προσθήκη HTML:
<div class="dropdown"> <button onclick="myFunction()" class="dropbtn">Διαδραστικό Κουτί</button> <div id="myDropdown" class="dropdown-content"> <a href="#">Σύνδεσμος 1</a> <a href="#">Σύνδεσμος 2</a> <a href="#">Σύνδεσμος 3</a> </div> </div>
πρότυπο εξήγησης:
Μπορείτε να χρησιμοποιήσετε οποιοδήποτε στοιχείο για να ανοίξετε την αναπτυσσόμενη λίστα, όπως το στοιχείο <button>, <a> ή <p>.
Χρησιμοποιήστε στοιχεία κουτί (όπως <div>) για τη δημιουργία της αναπτυσσόμενης λίστα και προσθέστε τους σύνδεσμους της αναπτυσσόμενης λίστα.
Χρησιμοποιήστε το στοιχείο <div> για να περιλαμβάνετε το κουμπί και το <div>, ώστε να χρησιμοποιείται το CSS για την ακριβή τοποθέτηση της αναπτυσσόμενης λίστα.
Βήμα 2 - Προσθήκη CSS:
/* Το κουμπί αναπτυσσόμενης λίστα */ .dropbtn { background-color: #3498DB; color: white; padding: 16px; font-size: 16px; border: none; cursor: pointer; } /* Το κουμπί της αναπτυσσόμενης λίστα όταν το ποντίκι είναι πάνω του ή όταν είναι εστιασμένο */ .dropbtn:hover, .dropbtn:focus { background-color: #2980B9; } /* Το στοιχείο κουτί <div> - Χρησιμοποιείται για τη τοποθέτηση του περιεχομένου της αναπτυσσόμενης λίστα */ .dropdown { position: relative; display: inline-block; } /* Το περιεχόμενο της αναπτυσσόμενης λίστα (προεπιλεγμένα κρυμμένο) */ .dropdown-content { display: none; position: absolute; background-color: #f1f1f1; min-width: 160px; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); z-index: 1; } /* Οι σύνδεσμοι εντός της αναπτυσσόμενης λίστα */ .dropdown-content a { color: black; padding: 12px 16px; text-decoration: none; display: block; } /* Μόνο όταν το ποντίκι είναι πάνω από το σύνδεσμο της αναπτυσσόμενης λίστα, αλλάζει το χρώμα του */ .dropdown-content a:hover {background-color: #ddd;} /* Εμφάνιση κατανομής πτυχώμενης λίστας (όταν ο χρήστης κάνει κλικ στο κουμπί κατανομής πτυχώμενης λίστας, χρησιμοποιήστε το JS για να προσθέσετε αυτόν τον τύπο στο κουτί περιεχομένου .dropdown-content) */ .show {display:block;}
πρότυπο εξήγησης:
θέτουμε στυλ για το κουμπί κατανομής πτυχώμενης λίστας, όπως χρώμα φόντου, περιθώρια, εφέ αναβοσβήσματος κ.λπ.
.dropdown
ο τύπος χρησιμοποιεί position:relative
, όταν θέλουμε να τοποθετήσουμε το περιεχόμενο της κατανομής πτυχώμενης λίστας κάτω από το κουμπί κατανομής πτυχώμενης λίστας (χρησιμοποιώντας position:absolute
)، είναι απαραίτητο.
.dropdown-content
ο τύπος περιλαμβάνει την πραγματική κατανομή πτυχώμενης λίστας. Είναι προεπιλεγμένα κρυφή και θα εμφανιστεί όταν το ποντίκι αναβοσβήσει (βλέπε παρακάτω). Σημείωση: ο ελάχιστος πλάτος έχει ρυθμιστεί σε 160px. Μπορείτε να αλλάξετε αυτή την τιμή ανάλογα με τις ανάγκες σας. Σuggestion: Αν θέλετε το πλάτος του περιεχομένου της κατανομής πτυχώμενης λίστας να είναι ίσο με το πλάτος του κουμπιού κατανομής πτυχώμενης λίστας, μπορείτε να ρυθμίσετε το πλάτος στο 100% (και να χρησιμοποιήσετε στο μικρότερο οθόνη) overflow:auto
για να ενεργοποιήσουμε τη σωρόληψη).
δεν χρησιμοποιούμε περιγράμματα, αλλά χρησιμοποιούμε shadow box
προσδιορισμό, ώστε η κατανομή πτυχώμενης λίστας να φαίνεται σαν ένα "χαρτί". Επίσης χρησιμοποιούμε z-index
ποστάστε την κατανομή πτυχώμενης λίστας μπροστά από άλλους στοιχεία.
Τρίτο βήμα - Προσθέστε JavaScript:
/* Όταν ο χρήστης κάνει κλικ στο κουμπί, εναλλάξτε την κατάσταση κρυψής και εμφάνισης του περιεχομένου της κατανομής πτυχώμενης λίστας */ function myFunction() { document.getElementById("myDropdown").classList.toggle("show"); } // Αν ο χρήστης κλικάρει εκτός της κατανομής πτυχώμενης λίστας, κλείστε την κατανομή πτυχώμενης λίστας window.onclick = function(event) { if (!event.target.matches('.dropbtn')) { var dropdowns = document.getElementsByClassName("dropdown-content"); var i; for (i = 0; i < dropdowns.length; i++) { var openDropdown = dropdowns[i]; if (openDropdown.classList.contains('show')) { openDropdown.classList.remove('show'); } } } }
δικανή κατανομή πτυχώμενης λίστας
κατανομή πλοήγησης με πτυχώμενη λίστα
κατανομή αναζήτησης (φιλτράρισμα) με πτυχώμενη λίστα
Σχετικές σελίδες
Εκμάθηση:μενού αναδυόμενα CSS
- Προηγούμενη σελίδα μενού αναδυόμενα που αναρτάται
- Προηγούμενη σελίδα μενού αναδυόμενα με κατηγορίες