У меня есть проблема, которая меня несколько расстраивает.Сценарий:
У меня есть два деления.Top div - это баннер (содержащий только логотип).Нижний элемент div - это панель навигации, содержащая несколько значков в виде ссылок и раскрывающийся список.
Я хочу две следующие вещи:
- иметь согласованный линейный градиентный фон над двумя элементами div
- в нижней части, navbar div, чтобы иметь положение: sticky, top: 0, так что он остается в верхней части страницы при прокрутке.
Я могу выполнить оба вышеперечисленных независимо, ноне одновременно.Есть ли способ достичь этого?
Упрощенная версия CSS и HTML, с версией, которая имеет липкую панель навигации, но градиент для каждого деления, не начиная с одного деления и заканчивая в другом:
#banner,
.navbar {
background-image: linear-gradient(to bottom right, rgb(0, 87, 128), rgb(0, 157, 230));
padding: 5px 5px 5px 5px;
}
.navbar {
position: sticky;
top: 0;
}
.navbar li {
display: inline;
}
.container {
height: 1000px;
}
<div id="banner" class="Container-fluid">
<div class="banner-row">
<h1>Logo!</h1>
</div>
</div>
<div class="navbar">
<ul class="nav navbar-nav">
<li><a href="/home/"><span>Home</span></a></li>
<li><a href="/about/"><span>About</span></a></li>
<li><a href="/contact/"><span>Contact</span></a></li>
</ul>
</div>
<div class="container body-content">
<h1>Content!</h1>
<p>Stuff to fill a space.</p>
</div>
И с обратным:
header {
background-image: linear-gradient(to bottom right, rgb(0, 87, 128), rgb(0, 157, 230));
padding: 5px 5px 5px 5px;
}
.navbar {
position: sticky;
top: 0;
}
.navbar li {
display: inline;
}
.container {
height: 1000px;
}
<header>
<div id="banner" class="Container-fluid">
<div class="banner-row">
<h1>Logo!</h1>
</div>
</div>
<div class="navbar">
<ul class="nav navbar-nav">
<li><a href="/home/"><span>Home</span></a></li>
<li><a href="/about/"><span>About</span></a></li>
<li><a href="/contact/"><span>Contact</span></a></li>
</ul>
</div>
</header>
<div class="container body-content">
<h1>Content!</h1>
<p>Stuff to fill a space.</p>
</div>