首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >粘边不粘

粘边不粘
EN

Stack Overflow用户
提问于 2020-11-23 02:30:53
回答 1查看 51关注 0票数 0

我试图做一个粘边栏,停在一个网页的标题图像底部,但我无法使它工作。我在下面的代码片段和这个JSFiddle中重新创建了这个问题,这可能更容易查看/测试。

侧栏正在查看我想要的内容,但是当我向下滚动时,它不会停在页面的顶部

代码语言:javascript
运行
复制
.about {
  margin-top: 50px;
}

h4 {
  padding-left: 0.3rem;
}

.about-header-image {
  background-size: cover !important;
  background-color: #919191;
  width: 100%;
  border-radius: 0px !important;
  padding-top: 3rem !important;
  padding-bottom: 2rem !important;
  margin-bottom: 0px;
  margin-top: 42px !important;
}

.nav-with-bar ul {
  list-style-type: none;
  padding-left: 10px;
}

.nav-with-bar.aboutnav {
  position: sticky;
  margin-top: 25px;
  padding: 0px;
  bottom: 100%;
  z-index: 100;
  width: 150px;
}

.nav-with-bar h5 {
  text-decoration: underline;
}

.nav-with-bar .nav-link:hover {
  text-decoration: underline;
}

.nav-with-bar .nav-link.active {
  border-right: 3px solid blue;
}

.nav-with-bar a {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 0px;
}

.nav-with-bar a:hover {
  color: #064579;
}
代码语言:javascript
运行
复制
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet" />
<link href="https://fonts.googleapis.com/css2?family=Crimson+Text&amp;display=swap" rel="stylesheet">
<div class="content">
  <nav class="navbar fixed-top navbar-expand-lg bg-dark">
    <div class="d-flex flex-grow-1 container-fluid pl-2">
      <a class="navbar-brand text-white" href="/Index">
        <span style="white-space: nowrap;" class="d-inline-block">Website</span>
      </a>
    </div>
  </nav>
  <div class="about-header-image" style="background-image: url(Assets/Wallpaper.jpg) !important;">
    <div class="my-auto text-center">
      <h1 style="font-family: 'Crimson Text', serif; font-size: 4em;" class="text-white d-inline-block">
        Website Name
      </h1>
    </div>
  </div>
  <div class="h-100">
    <div class="nav-with-bar aboutnav d-md-inline-block offset-1 col-2 d-none mr-3">
      <h5>About Us</h5>
      <ul>
        <li>
          <a href="/About#purpose" class="nav-link">Purpose</a></li>
        <li>
          <a href="/About#founding" class="nav-link">Founding</a></li>
        <li>
          <a href="/About#future" class="nav-link">Future</a></li>
        <li>
          <a href="/About#contributors" class="nav-link">Contributors</a></li>
        <li>
          <a href="/About#contact" class="nav-link">Contact</a></li>
      </ul>
    </div>
    <div class="col-md-7 d-inline-block about">
      <div id="purpose" style="font-size: x-large;">
        <h4 class="mb-0">Filler Text</h4>
        <hr class="nogap">
        <p>
          Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor
          in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing
          elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
          cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
          ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
          Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
          ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
          proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation
          ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt
          mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
          commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
        </p>
      </div>
    </div>
  </div>
</div>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-23 03:46:45

我用css标记了我所有的编辑。

代码语言:javascript
运行
复制
.about {
  margin-top: 50px;
}

h4 {
  padding-left: 0.3rem;
}

.h-100 {
    display: flex; /*add this it*/
}

.about-header-image {
  background-size: cover !important;
  background-color: #919191;
  width: 100%;
  border-radius: 0px !important;
  padding-top: 3rem !important;
  padding-bottom: 2rem !important;
  margin-bottom: 0px;
  margin-top: 42px !important;
}

.nav-with-bar ul {
  list-style-type: none;
  padding-left: 10px;
}

.nav-with-bar.aboutnav {
  position: sticky;
  top: 81px; /*add this it*/
  margin-top: 25px;
  padding: 0px;
  bottom: 100%;
  z-index: 100;
  width: 150px;
  
  display: flex!important; /*add this it*/
  flex-direction: column; /*add this it*/
  height: 100%; /*add this it*/
}

.nav-with-bar h5 {
  text-decoration: underline;
}

.nav-with-bar .nav-link:hover {
  text-decoration: underline;
}

.nav-with-bar .nav-link.active {
  border-right: 3px solid blue;
}

.nav-with-bar a {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 0px;
}

.nav-with-bar a:hover {
  color: #064579;
}
代码语言:javascript
运行
复制
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet" />
<link href="https://fonts.googleapis.com/css2?family=Crimson+Text&amp;display=swap" rel="stylesheet">
<div class="content">
  <nav class="navbar fixed-top navbar-expand-lg bg-dark">
    <div class="d-flex flex-grow-1 container-fluid pl-2">
      <a class="navbar-brand text-white" href="/Index">
        <span style="white-space: nowrap;" class="d-inline-block">Website</span>
      </a>
    </div>
  </nav>
  <div class="about-header-image" style="background-image: url(Assets/Wallpaper.jpg) !important;">
    <div class="my-auto text-center">
      <h1 style="font-family: 'Crimson Text', serif; font-size: 4em;" class="text-white d-inline-block">
        Website Name
      </h1>
    </div>
  </div>
  <div class="h-100">
    <div class="nav-with-bar aboutnav d-md-inline-block offset-1 col-2 d-none mr-3">
      <h5>About Us</h5>
      <ul>
        <li>
          <a href="/About#purpose" class="nav-link">Purpose</a></li>
        <li>
          <a href="/About#founding" class="nav-link">Founding</a></li>
        <li>
          <a href="/About#future" class="nav-link">Future</a></li>
        <li>
          <a href="/About#contributors" class="nav-link">Contributors</a></li>
        <li>
          <a href="/About#contact" class="nav-link">Contact</a></li>
      </ul>
    </div>
    <div class="col-md-7 d-inline-block about">
      <div id="purpose" style="font-size: x-large;">
        <h4 class="mb-0">Filler Text</h4>
        <hr class="nogap">
        <p>
          Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor
          in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing
          elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
          cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt
          ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
          Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
          ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
          proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation
          ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt
          mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
          commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
        </p>
      </div>
    </div>
  </div>
</div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64961848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档