我有以下两个部分组成的简单导航菜单,一个瘦小的横幅和一个顶部导航.我使用了sticky属性来确保TopNAV始终可见(不应显示瘦小的横幅).

但是,如何才能确保在粘滞处于活动状态(以避免间隙)时,顶部导航移动到视区的顶部,并进行其他调整,如使用CSS降低顶部导航的高度(粘滞时)?

.skinny-banner {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    background-color: $pastel-green;
    width: 100%;
    height: 40px;
    gap: 24px;
    padding-right: 40px;
    font-size: 14px;
    font-weight: 300;
    background-color: lightyellow;
}

.skinny-nav-menu {
  display: flex;
  gap: 24px;
}

.sticky-container {
    position: fixed;
  width: 100%;
}


/* Add a black background color to the top navigation */
.topnav {
  background-color: #333;
  overflow: hidden;
}

/* Style the links inside the navigation bar */
.topnav a {
  float: left;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 17px;
  position: sticky;
}

/* Change the color of links on hover */
.topnav a:hover {
  background-color: #ddd;
  color: black;
}

/* Add a color to the active/current link */
.topnav a.active {
  background-color: #04AA6D;
  color: white;
}

/* Just adding content that can be scrolled to */
.content {
  height: 500px;
  background-color: lightblue;
}
.content-1 {
  height: 500px;
  background-color: lightsalmon;
}
.content-2 {
  height: 500px;
  background-color: lightgreen;
}
<div class="skinny-banner">
  <ul class="skinny-nav-menu">
    <li><a href="#">Item one</a></li>
    <li><a href="#">Item two</a></li>
    <li><a href="#">Item three</a></li>
  </ul>
</div>

<div class="sticky-container">
  <div class="topnav">
    <a class="active" href="#home">Home</a>
    <a href="#news">News</a>
    <a href="#contact">Contact</a>
    <a href="#about">About</a>
  </div>
</div>

<div class="content"></div>
<div class="content-1"></div>
<div class="content-2"></div>

推荐答案

.sticky-container {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  font-size: 20px;
}

Html相关问答推荐

如何改进这个jQuery滑动器的功能?

悬停时放大人物:不要增加其周围边界的大小

CSS属性不适用于IOS设备

Rmarkdown上的垂直标签集

损坏的可点击html邮箱签名

垂直页眉,每行只显示一个使用css的字母

Angular 15 p-对话框不使用组件 Select 器呈现HTML

滚动两个不同高度的DIV;一个等待另一个

SCSS动画错误:心脏在页面刷新时启动动画,原因是:Checked和:Not(:Checked) Select 器

SVG';COLOR&39;属性不优先于通用css';COLOR&39;属性

Django HTML标记-Merge for Loop with Conditional语句

为什么字体大小而不是 colored颜色 属性适用于元素?

四开:如何右对齐 PDF *和* HTML 中的文本

::可点击图标之前

排列卡片时遇到困难

a with