当我向下滚动页面时,如何在导航栏下显示阴影?
我的网站上有一个导航栏,当用户开始向下滚动页面时,我想设置阴影。
当我向下滚动页面时,如何在导航栏下显示阴影?
因此,如果用户向下滚动页面,则阴影应立即出现。
也许只能使用CSS进行此操作。
.site-header {
z-index: 111;
position: sticky;
top: 0;
}
@media (max-width: 75rem) {
.site-header__fixable .site-header__inner {
box-shadow: -36px 1px 36px rgb(0 0 0 / 8%);
}
}
<header id="header" class="site-header" data-drupal-selector="site-header" role="banner" data-once="navigation">
<div class="site-header__fixable" data-drupal-selector="site-header-fixable">
<div class="site-header__initial">
<button class="sticky-header-toggle" data-drupal-selector="sticky-header-toggle" role="switch" aria-controls="site-header__inner" aria-label="Sticky header" aria-checked="false">
<span class="sticky-header-toggle__icon">
<span></span>
<span></span>
<span></span>
</span>
</button>
</div>
<div id="site-header__inner" class="site-header__inner" data-drupal-selector="site-header-inner">
<div class="container site-header__inner__container">
<div class="header-nav-overlay" data-drupal-selector="header-nav-overlay"></div>
<div class="mobile-buttons" data-drupal-selector="mobile-buttons">
<button class="mobile-nav-button" data-drupal-selector="mobile-nav-button" aria-label="Main Menu" aria-controls="header-nav" aria-expanded="false">
<span class="mobile-nav-button__label">Menu</span>
<span class="mobile-nav-button__icon"></span>
</button>
</div>
<div id="header-nav" class="header-nav" data-drupal-selector="header-nav">
<nav id="block-subtheme-olivero-main-menu" class="primary-nav block block-menu navigation menu--main" aria-labelledby="block-subtheme-olivero-main-menu-menu" role="navigation">
<h2 class="visually-hidden block__title" id="block-subtheme-olivero-main-menu-menu">Main navigation</h2>
<ul class="menu primary-nav__menu primary-nav__menu--level-1" data-drupal-selector="primary-nav-menu--level-1" data-once="olivero-automatic-mobile-nav">
<li class="primary-nav__menu-item primary-nav__menu-item--link primary-nav__menu-item--level-1 primary-nav__menu-item--has-children" data-drupal-selector="primary-nav-menu-item-has-children">
<a href="/culture-geek" class="primary-nav__menu-link primary-nav__menu-link--link primary-nav__menu-link--level-1 primary-nav__menu-link--has-children" data-drupal-selector="primary-nav-menu-link-has-children" data-drupal-link-system-path="taxonomy/term/14">
<span class="primary-nav__menu-link-inner primary-nav__menu-link-inner--level-1">Culture geek</span>
</a>
<button class="primary-nav__button-toggle" data-drupal-selector="primary-nav-submenu-toggle-button" aria-controls="primary-menu-item-1" aria-expanded="false">
<span class="visually-hidden">sous-navigation Culture geek</span>
<span class="icon--menu-toggle"></span>
</button>
<span data-drupal-selector="primary-nav-menu-
I have a navigation bar on my website and I want to set a shadow when the user starts scrolling down the page.
How do I make a shadow appear under the navigation bar when I scroll down the page ?
So if the user scrolls down the page, the shadow should appear immediately.
Maybe it's possible to do this with just CSS.
.site-header {
z-index: 111;
position: sticky;
top: 0;
}
@media (max-width: 75rem) {
.site-header__fixable .site-header__inner {
box-shadow: -36px 1px 36px rgb(0 0 0 / 8%);
}
}
<header id="header" class="site-header" data-drupal-selector="site-header" role="banner" data-once="navigation">
<div class="site-header__fixable" data-drupal-selector="site-header-fixable">
<div class="site-header__initial">
<button class="sticky-header-toggle" data-drupal-selector="sticky-header-toggle" role="switch" aria-controls="site-header__inner" aria-label="Sticky header" aria-checked="false">
<span class="sticky-header-toggle__icon">
<span></span>
<span></span>
<span></span>
</span>
</button>
</div>
<div id="site-header__inner" class="site-header__inner" data-drupal-selector="site-header-inner">
<div class="container site-header__inner__container">
<div class="header-nav-overlay" data-drupal-selector="header-nav-overlay"></div>
<div class="mobile-buttons" data-drupal-selector="mobile-buttons">
<button class="mobile-nav-button" data-drupal-selector="mobile-nav-button" aria-label="Main Menu" aria-controls="header-nav" aria-expanded="false">
<span class="mobile-nav-button__label">Menu</span>
<span class="mobile-nav-button__icon"></span>
</button>
</div>
<div id="header-nav" class="header-nav" data-drupal-selector="header-nav">
<nav id="block-subtheme-olivero-main-menu" class="primary-nav block block-menu navigation menu--main" aria-labelledby="block-subtheme-olivero-main-menu-menu" role="navigation">
<h2 class="visually-hidden block__title" id="block-subtheme-olivero-main-menu-menu">Main navigation</h2>
<ul class="menu primary-nav__menu primary-nav__menu--level-1" data-drupal-selector="primary-nav-menu--level-1" data-once="olivero-automatic-mobile-nav">
<li class="primary-nav__menu-item primary-nav__menu-item--link primary-nav__menu-item--level-1 primary-nav__menu-item--has-children" data-drupal-selector="primary-nav-menu-item-has-children">
<a href="/culture-geek" class="primary-nav__menu-link primary-nav__menu-link--link primary-nav__menu-link--level-1 primary-nav__menu-link--has-children" data-drupal-selector="primary-nav-menu-link-has-children" data-drupal-link-system-path="taxonomy/term/14">
<span class="primary-nav__menu-link-inner primary-nav__menu-link-inner--level-1">Culture geek</span>
</a>
<button class="primary-nav__button-toggle" data-drupal-selector="primary-nav-submenu-toggle-button" aria-controls="primary-menu-item-1" aria-expanded="false">
<span class="visually-hidden">sous-navigation Culture geek</span>
<span class="icon--menu-toggle"></span>
</button>
<span data-drupal-selector="primary-nav-menu-????" class="primary-nav__menu-????"></span>
<ul class="menu primary-nav__menu primary-nav__menu--level-2" data-drupal-selector="primary-nav-menu--level-2" id="primary-menu-item-1">
<li class="primary-nav__menu-item primary-nav__menu-item--link primary-nav__menu-item--level-2">
<a href="/crypto" class="primary-nav__menu-link primary-nav__menu-link--link primary-nav__menu-link--level-2" data-drupal-link-system-path="taxonomy/term/2"> <span class="primary-nav__menu-link-inner primary-nav__menu-link-inner--level-2">Crypto</span>
</a>
</li>
<li class="primary-nav__menu-item primary-nav__menu-item--link primary-nav__menu-item--level-2">
<a href="/unboxing" class="primary-nav__menu-link primary-nav__menu-link--link primary-nav__menu-link--level-2" data-drupal-link-system-path="taxonomy/term/3"> <span class="primary-nav__menu-link-inner primary-nav__menu-link-inner--level-2">Unboxing</span>
</a>
</li>
<li class="primary-nav__menu-item primary-nav__menu-item--link primary-nav__menu-item--level-2">
<a href="/vie-pratique" class="primary-nav__menu-link primary-nav__menu-link--link primary-nav__menu-link--level-2" data-drupal-link-system-path="taxonomy/term/1"> <span class="primary-nav__menu-link-inner primary-nav__menu-link-inner--level-2">Vie pratique</span>
</a>
</li>
<li class="primary-nav__menu-item primary-nav__menu-item--link primary-nav__menu-item--level-2">
<a href="/securite-et-confidentialite" class="primary-nav__menu-link primary-nav__menu-link--link primary-nav__menu-link--level-2" data-drupal-link-system-path="taxonomy/term/4"> <span class="primary-nav__menu-link-inner primary-nav__menu-link-inner--level-2">Sécurité et confidentialité</span>
</a>
</li>
<li class="primary-nav__menu-item primary-nav__menu-item--link primary-nav__menu-item--level-2">
<a href="/ambiance" class="primary-nav__menu-link primary-nav__menu-link--link primary-nav__menu-link--level-2" data-drupal-link-system-path="taxonomy/term/5"> <span class="primary-nav__menu-link-inner primary-nav__menu-link-inner--level-2">Ambiance</span>
</a>
</li>
</ul>
</li>
</ul>
</nav>
</div>
</div>
</div>
</div>
</div>
</header>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
只需
窗口。即使您水平滚动
window.scroll
也会触发。因此必须使用
scrolltop
方法。此方法设置或返回所选元素的垂直滚动栏位置。Just
window.onscroll
is not sufficient if you want shadow appear under the navigation. Even if you scroll horizontally thewindow.onscroll
will trigger.So must use
scrollTop
method. This method sets or returns the vertical scrollbar position for the selected elements.我认为这需要JavaScript。
尝试在标题下添加此。
I think this needs JavaScript.
Try to add this under the header.