Просто на голову - я новичок во всем этом, поэтому я был бы признателен, если бы вы могли объяснить что-либо с точки зрения непрофессионала.
Итак, я создаю веб-сайт, и у меня довольномногое получилось, за исключением прокручиваемого выпадающего меню.Я имею в виду, что все работает нормально, единственная проблема в том, что выпадающие списки - это вся ширина экрана, а не только ширина элемента, под которым они находятся.Я определил, что проблема в том, что основной div-фон навигационной панели имеет ширину: 100%;чтобы заполнить всю ширину экрана.
Если я удаляю ширину: 100%;из основного div панели navbar все работает так, как я хочу, но тогда панель навигации не занимает всю ширину экрана.Так что я могу получить его так, как я хочу, с панелью навигации, которая не заполняет экран по горизонтали, или у меня может быть полная панель навигации с выпадающими списками, которые идут на всю ширину ...
Само собой разумеется, яя пытаюсь получить лучшее из обоих миров, то есть панель навигации с шириной 100% (чтобы при уменьшении страницы она сохранялась на всю ширину окна браузера) с раскрывающимися списками ширины элемента, под которым они находятся.
Ниже приведена ссылка на CodePen.Вот HTML:
<body>
<div class="topnav">
<div class="topnav-logo">
<img class="logo" src="images/logo.png" height=5%>
</div>
<div class="topnav-blue">
<a href="index.html" class="active">HOME</a>
</div>
<div class="dropdown">
<button class="dropbtn">SERVICES
<i class="fa fa-caret-down"></i>
</button>
<div class="dropdown-content">
<a href="#">Link1</a>
<a href="#">Link 2</a>
<a href="#">Link 3</a>
</div>
</div>
<a href="aform.html">APPLY</a>
<a href="about.html">ABOUT US</a>
<a href="#about">CONTACT</a>
</div>
<img class="banner" src="https://www.google.co.uk/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png" width=100%>
<h1>WELCOME</h1>
</body>
Вот CSS:
body {
margin: 0;
font-family: verdana;
}
.topnav {
position: relative;
overflow: scroll;
width: 100%;
position: fixed;
top: 0;
background: #fff; ---> DELETING THIS FIXES THE DROPDOWN BG, BUT DOESN'T MAKE THE NAVBAR GO THE ENTIRE WIDTH
}
.topnav a {
float: left;
color: #000;
text-align: center;
padding: 30px 50px;
text-decoration: none;
font-size: 16px;
background-color: #fff;
}
.topnav-blue a {
float: left;
color: #000;
text-align: center;
padding: 30px 50px;
text-decoration: none;
font-size: 16px;
background-color: #fff;
}
.topnav a:hover {
background-color: #eee;
color: black;
}
.topnav-blue a:hover {
background-color: #16396f;
color: white;
}
.topnav-logo {
float: left;
padding: 19px;
background-color: #fff;
}
.dropdown {
float: left;
overflow: hidden;
}
.dropdown .dropbtn {
border: none;
outline: none;
color: black;
background-color: #fff;
font-family: inherit;
margin: 0;
color: #000;
text-align: center;
padding: 30px 50px;
text-decoration: none;
font-size: 16px;
}
.navbar a:hover, .dropdown:hover .dropbtn {
background-color: #eee;
}
.dropdown-content {
display: none;
position: relative;
width: auto;
background-color: #fff;
z-index: 1;
}
.dropdown-content a {
float: none;
font-size: 12px;
color: black;
padding: 16px 10%;
text-decoration: none;
display: block;
text-align: center;
}
.dropdown-content a:hover {
background-color: #eee;
}
.dropdown:hover .dropdown-content {
display: block;
}
h1 {
text-align: center;
}
https://codepen.io/anon/pen/ZwVMyZ