Я добавил класс dropdown для тега a, который содержит выпадающие меню. Вот мой код
HTML
<section class="nav-bar" id="mk">
<div class="nav-container">
<nav>
<div class="nav-mobile"><a id="nav-toggle" href="#!"><span></span></a></div>
<ul class="nav-list">
<li>
<a href="index.html">Home</a>
</li>
<li>
<a href="about.html">About Us</a>
</li>
<li>
<a href="courses" class="dropdown">Courses</a>
<ul class="nav-dropdown">
<li>
<a href="#">HTML</a>
</li>
<li>
<a href="#">CSS</a>
</li>
<li>
<a href="#">JavaScript</a>
</li>
</ul>
</li>
<li>
<a href="students.html" class="dropdown">Students</a>
<ul class="nav-dropdown">
<li>
<a href="#">Photoshop</a>
</li>
<li>
<a href="#">Illustrator</a>
</li>
<li>
<a href="#">InDesign</a>
</li>
</ul>
</li>
<li>
<a href="career.html">Career</a>
</li>
<li>
<a href="opportunity.html">Opportunity</a>
</li>
<li>
<a href="media.html">Media</a>
</li>
<li>
<a href="html">Contact Us</a>
</li>
</ul>
</nav>
</div>
</section>
CSS
.nav-bar {
height: 70px;
background: #FFFFFF;
}
.brand {
position: absolute;
padding-left: 20px;
float: left;
line-height: 70px;
text-transform: uppercase;
font-size: 1.4em;
}
.brand a img {
max-height: 70px;
}
.brand a,
.brand a:visited {
color: #ffffff;
text-decoration: none;
}
.nav-container {
max-width: auto;
margin: 0 auto;
}
nav {
float: right;
}
nav ul {
list-style: none;
margin: 0;
padding: 0;
}
nav ul li {
float: left;
position: relative;
}
nav ul li a,
nav ul li a:visited {
display: block;
padding: 0 20px;
line-height: 70px;
background: #FFFFFF;
color: black;
text-decoration: none;
font-family: 'Oswald', sans-serif;
font-weight: bold;
}
nav ul li a:hover,
nav ul li a:visited:hover {
background: black;
color: white;
}
nav ul li a:not(:only-child):after,
nav ul li a:visited:not(:only-child):after {
padding-left: 4px;
content: ' ▾';
}
nav ul li ul li {
min-width: 190px;
}
nav ul li ul li a {
padding: 15px;
line-height: 20px;
}
.nav-dropdown {
position: absolute;
display: none;
z-index: 1;
box-shadow: 0 3px 12px rgba(0, 0, 0, 0.15);
}
.nav-mobile {
display: none;
position: absolute;
top: 0;
right: 0;
background: #262626;
height: 70px;
width: 70px;
}
@media only screen and (max-width: 1164px) {
.nav-mobile {
display: block;
}
nav {
width: 100%;
padding: 70px 0 15px;
}
nav ul {
display: none;
}
nav ul li {
float: none;
}
nav ul li a {
padding: 15px;
line-height: 20px;
padding-left: 25%;
}
nav ul li ul li a {
padding-left: 30%;
}
.nav-dropdown {
position: static;
}
.brand a img {
max-height: 60px;
margin-top: 5px;
}
}
@media screen and (min-width: 1165px) {
.nav-list {
display: block !important;
}
}
#nav-toggle {
position: absolute;
left: 18px;
top: 22px;
cursor: pointer;
padding: 10px 35px 16px 0px;
}
#nav-toggle span,
#nav-toggle span:before,
#nav-toggle span:after {
cursor: pointer;
border-radius: 1px;
height: 5px;
width: 35px;
background: #ffffff;
position: absolute;
display: block;
content: '';
transition: all 300ms ease-in-out;
}
#nav-toggle span:before {
top: -10px;
}
#nav-toggle span:after {
bottom: -10px;
}
#nav-toggle.active span {
background-color: transparent;
}
#nav-toggle.active span:before,
#nav-toggle.active span:after {
top: 0;
}
#nav-toggle.active span:before {
transform: rotate(45deg);
}
#nav-toggle.active span:after {
transform: rotate(-45deg);
}
article {
max-width: 1000px;
margin: 0 auto;
padding: 10px;
}
Jquery
$(document).ready(function()
{
$(".nav-list > li > a").on("click",function(e)
{
$(".nav-dropdown").hide(); // to hide other open dropdown
e.stopPropagation();
if($(this).hasClass("dropdown")) //check whether dropdown exists
{
e.preventDefault();
}
$($($(this).parent()).find(".nav-dropdown")).slideToggle(200); //open current dropdown
})
//close dropdown by clicking outside the dropdowm
$(document).click(function(e){
var nav_dropdown=document.getElementsByClassName("nav-dropdown");
let target=e.target;
if(target === nav_dropdown)
{
$(".nav-dropdown").show();
}
else{
$(".nav-dropdown").hide();
}
});
})