J'essaie d'ajouter une barre de navigation à une application Web que je crée pour une classe, et je voulais utiliser un menu déroulant (trop de choses à inclure pour tout mettre en ligne) .
Je veux que la barre soit fixée en haut de la page, mais lorsque je la mets position: fixed;
, le menu déroulant cesse de fonctionner. Y a-t-il un moyen de contourner cela? Est-ce que je mets juste position: fixed;
le mauvais endroit, ou est-ce en conflit avec le contenu déroulant ayant position: absolute;
peut-être ...
(Je suis très novice dans le domaine du Web, donc si vous voyez quelque chose d'autre que je pourrais changer / approuver, faites-le moi savoir! Conseil très apprécié)
ul {
list-style-type: none;
margin: 0;
top: 0;
position: fixed;
width: 100%;
padding: 0;
overflow: hidden;
background-color: #333;
}
li {
float: left;
}
li a,
.dropbtn {
display: inline-block;
color: white;
text-align: center;
padding: 14px 16px;
text-decoration: none;
}
li a:hover,
.dropdown:hover .dropbtn {
background-color: #111;
}
li.dropdown {
display: inline-block;
}
.active {
background-color: #4CAF50;
}
.dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
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;
text-align: left;
}
.dropdown-content a:hover {
background-color: #f1f1f1;
}
.dropdown:hover .dropdown-content {
display: block;
}
<html>
<head>
</br>
</br>
<ul>
<li><a class="active" href="/homePageAgent">Home</a></li>
<li class="dropdown">
<a href="javascript:void(0)" class="dropbtn">View Pages</a>
<div class="dropdown-content">
<a href="/agentViewFlights">View Booked Flights</a>
<a href="/agentTopCustomers">View Top Customers</a>
</div>
</li>
<li style="float:right"><a href="/logout">Logout</a></li>
</ul>
</head>
</html>
Fondamentalement, "Afficher les pages" devrait devenir un menu déroulant lorsque survolé avec la souris, et c'est le cas si je supprime la "position: fixe;" ligne, mais ... je veux que la position soit fixée.
Mettez votre navigation dans une couche. Et faites cette couche avec une position fixe.
.navbar-top {
margin: 0;
padding: 0;
width: 100%;
top: 0;
position: fixed;
}
ul {
list-style-type: none;
margin: 0;
top: 0;
/*position: fixed;*/
width: 100%;
padding: 0;
overflow: hidden;
background-color: #333;
}
li {
float: left;
}
li a,
.dropbtn {
display: inline-block;
color: white;
text-align: center;
padding: 14px 16px;
text-decoration: none;
}
li a:hover,
.dropdown:hover .dropbtn {
background-color: #111;
}
li.dropdown {
display: inline-block;
}
.active {
background-color: #4CAF50;
}
.dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
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;
text-align: left;
}
.dropdown-content a:hover {
background-color: #f1f1f1;
}
.dropdown:hover .dropdown-content {
display: block;
}
<html>
<head>
</head>
<body>
<div class="navbar-top">
<ul>
<li><a class="active" href="/homePageAgent">Home</a></li>
<li class="dropdown">
<a href="javascript:void(0)" class="dropbtn">View Pages</a>
<div class="dropdown-content">
<a href="/agentViewFlights">View Booked Flights</a>
<a href="/agentTopCustomers">View Top Customers</a>
</div>
</li>
<li style="float:right"><a href="/logout">Logout</a></li>
</ul>
</div>
</body>
</html>
Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.
En cas d'infraction, veuillez [email protected] Supprimer.
laisse moi dire quelques mots