Я ценю всю помощь, которую я могу получить:)
Я пытаюсь создать адаптивную навигационную панель, которая будет редактироваться для последующего использования.Но, похоже, у меня проблема со значком гамбургера.Если я изменю размер веб-браузера, содержимое переключается на значок мобильного гамбургера, и появляется меню, и наоборот.
Но когда я щелкаю значок гамбургера в мобильном представлении, а затем нажимаю его снова, чтобыменю исчезает, и после изменения его размера в режиме рабочего стола меню пропадает.
Как мне заставить его работать?
HTML:
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Framework</title>
<link rel="stylesheet" type="text/css" media="screen" href="css/main.css" />
<script src="js/main.js"></script>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script>
$(document).ready(function(){
$(".navbar-hamburger").click(function(){
$(".navbar-item").toggle();
});
});
</script>
</head>
<body class="bg-grey-light">
<nav class="navbar bg-white">
<div class="navbar-brand">Company Name</div>
<div class="navbar-item">
<a href="index.html" class="">Home</a>
</div>
<div class="navbar-item">
<a href="#">About</a>
</div>
<div class="navbar-item">
<a href="#">Shop</a>
</div>
<div class="navbar-item">
<a href="#">Forum</a>
</div>
<div class="navbar-hamburger">
<i class="fa fa-chevron-down"></i>
</div>
</nav>
</body>
CSS:
.navbar{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
position: relative;
}
.navbar-brand{
flex-grow: 100;
padding: 0.75rem;
padding-left: 1.5rem;
}
.navbar-item{
flex-grow: 0;
padding: 0.75rem;
display: block;
}
.navbar-item:hover {
background-color: var(--color-grey-lighter);
}
.navbar-hamburger{
display: none;
position: absolute;
padding: 0.75rem 1.5rem 0.75rem 1.5rem;
right: 0;
}
.navbar-hamburger-active{
display: none;
position: absolute;
padding: 0.75rem 1.5rem 0.75rem 1.5rem;
right: 0;
}
@media only screen and (max-width: 720px) {
.navbar{
flex-direction: column;
align-items: flex-start;
}
.navbar-brand{
width: 100%;
}
.navbar-item{
width: 100%;
padding-left: 1.5rem;
display: none;
}
.navbar-hamburger{
display: block;
}
}
Краткое ДЕМО: https://codepen.io/zalandemeter12/pen/dQayMP
С уважением